Bonjour,

Je souhaite comparer un champ que je dois contrôler et un champ que je calcule.
Le champ que je calcule est trié de manière croissante (plusieurs noms de boîtiers sur un poteau).
En revanche, le champ que je dois contrôler est remplit manuellement, donc les boîtiers ne sont pas nécessairement indiqué dans le bon ordre.

Dans l'exemple ci-dessous, le gid N°1 apparaîtrait en erreur alors que les boîtiers sont bien tous indiqués.
Comment puis-je réordonner la liste à l'intérieur du champ pour que la comparaison des deux champs fonctionne ?

Merci

Nom : Sélection_039.png
Affichages : 209
Taille : 13,8 Ko

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
SELECT pt.gid
,pt.boitiers AS a_controler
,string_agg(bp.nom,';' ORDER BY bp.nom) AS concat
from "input".poteau AS pt
left join "input".boitier AS bp on ST_INTERSECTS(pt.geom,bp.geom)
group by pt.gid,pt.boitiers
having pt.boitiers != string_agg(bp.nom,';' ORDER by bp.nom)