Bonjour,
Je fais à nouveau appel à l'expertise des membres de ce forum pour m'aider à résoudre un problème dont la solution n'a pas été trouvée après moult tests et recherches.
Je cherche à obtenir l'identifiant start_end dont la valeur de la colonne tot_cost est la plus grande tout en faisant un regroupement par start_vid.
(il s'agit de données à composante spatiale générées à partir de l'extension pg_routing de PostGIS. )
- start_end correspond aux identifiants du début et de fin de chaque chemin concaténés et séparés par un "_"
- tot_cost correspond à la longueur totale en mètres de chaque chemin
- start_vid correspond à l'identifiant du premier nœud de chaque chemin
- num_plat correspond à l'identifiant d'un objet spatial en lien avec le chemin
Ma requête :
... me donne presque le résultat attendu mais je conserve toujours plusieurs lignes pour un même nœud de départ start_vid :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 CREATE TABLE "TEST2"."test" AS SELECT "t1"."start_vid" as "start_vid", max("t1"."tot_cost") as "tot_cost","t1"."start_end" as "start_end","t1"."num_plat" as "num_plat" FROM "TEST2"."graph2" as "t1" GROUP BY "start_vid","start_end","num_plat"
Je souhaiterais obtenir qu'une ligne par start_vid avec son identifiant start_end dont la valeur comprise dans tot_cost est la plus grande par start_vid. Dans l'exemple ce sont les lignes 460 et 361 pour les start_vid 1 et 44.
J'espère avoir été clair. Merci de m'avoir lu et merci d'avance pour vos réponses.![]()
Partager