SQL

SELECT count(*) FROM population where P09_POP > 250000

RÉPONSE : 8

select nom from communes where comid in (SELECT codgeo FROM population
where P09_POP > 250000)

select c.nom, p.P09_POP
from communes as c join population as p on c.comid = p.codgeo
where  p.P09_POP > 250000
order by p.P09_POP desc

select  (1.0*P09_POP)/(P99_POP) as "progression" from population

select  max((1.0*P09_POP)/(P99_POP)) as "progression" from population

select c.nom, p.P09_POP, (1.0*P09_POP)/(P99_POP) as "progression" from
communes as c join population as p on c.comid = p.codgeo where
progression > 3

select min((1.0*P09_POP)/(P99_POP)) from population

select c.nom, d.nom as "Département", p.P09_POP, p.P99_POP,
(1.0*P09_POP)/(P99_POP) as "progression" from communes as c join
population as p on c.comid = p.codgeo join departements as d on
c.depid = d.depid where progression <= 0.25

select c.nom,c.comid,k.nom,k.comid from communes as c join communes as
k where (c.nom = k.nom and c.comid != k.comid and c.depid=59 and
k.depid=62)

select count(*) from population where P09_POP > 10000

select p.codgeo,c.nom,d.nom 
from population as p join communes as c on p.codgeo = c.comid
join departements as d on c.depid = d.depid 
where p.P09_POP > 10000

select count(p.codgeo) as "nombre de grosses communes",d.nom 
from population as p join communes as c on p.codgeo = c.comid
join departements as d on c.depid = d.depid 
where p.P09_POP > 10000
group by d.nom
having "nombre de grosses communes" > 4
order by "nombre de grosses communes"


select c.nom, d.nom, r.nom, p.P09_POP 
from population as p join communes as c on c.comid = p.codgeo
join departements as d on d.depid = c.depid
join regions as r on r.regid = d.regid
where p.P09_POP > 100*(SELECT avg(P09_POP) FROM population)
order by r.nomsimp

--REM r.nomsimp pour placer l'Île de France au bon endroit

CREATE VIEW "Progression" as
select codgeo, (1.0*P09_POP)/P99_POP as progres from population

select c.nom, p.progres from communes as c join Progression as p
on c.comid = p.codgeo
where p.progres = (select max(progres) from Progression)

select count(p.codgeo), r.nom 
from Progression as p join communes as c on p.codgeo = c.comid
join departements as d on c.depid = d.depid
join regions as r on d.regid = r.regid
where (p.progres < (select avg(p.progres) from progression as p))
group by r.nom
order by r.nomsimp

select  r.nom, d.nom, c.nom, p.progres 
from Progression as p join communes as c on p.codgeo = c.comid
join departements as d on c.depid = d.depid
join regions as r on d.regid = r.regid
where (p.progres > 2*(select avg(p.progres) from progression as p)) 
and ( zeat_id >0 and zeat_id < 9)
order by r.nomsimp

