Message posté par : Hippo (jerome.hippolyte(a)yahoo.fr)
----------------------------------------
Bonjour,
J'ai une table dans PostGreSQL qui liste les départements français et les communes
composant chacun des départements, ainsi que les populations municipales.
J'ai classé cette table de façon à ne garder que les 200 communes ayant la population
la plus importante.
Pour ce faire, j'ai utilisé le code suivant grâce à l'aide de membres de ce forum
-----------------
Code :
SELECT
*
FROM (
SELECT
ROW_NUMBER() OVER (PARTITION BY departement ORDER BY population DESC) AS r,
t.*
FROM
table t) x
WHERE
x.r <= 200;
-----------------
J'aimerais maintenant savoir quelle est la population de la commune de chaque
département à la 200è ligne.
Donc avoir une liste de chaque département avec la valeur de la population de la commune à
la 200è ligne.
A priori je n'ai pas vraiment de problème pour cette partie.
Mon problème réside dans le fait que certains départements ont moins de 200 communes. Je
souhaiterais donc dans ce cas avoir la population pour la la commune à la ligne x, la
ligne x étant la dernière commune a être listée.
Ainsi si un département ne compte que 50 communes, je souhaiterais d'abord renvoyer le
nombre "50", puis aller récupérer la population référente à cette ligne.
Pour information, j'ai également découpé mes départements en plusieurs tranches
-----------------
Code :
SELECT
*
MAX(case t1.code_dep when <25 then t1.r end) max25,
MAX(case t1.code_dep when >25 and <50 then t1.r end) max50
FROM
departements as t1
WHERE t1.r = t1.maxrp
-----------------
Ca ne fonctionne pas puisque j'ai en retour un msg me disant que je ne peux pas
utiliser l'alias maxrp ici.
J'ai essayé en mettant ma fonction Max dans un select dans le where, mais pas possible
non plus.
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=351107#p351107
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net