PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2025 → [WD16] commande SQL Group_Concat en HF
[WD16] commande SQL Group_Concat en HF
Débuté par krinasoft, 21 nov. 2011 17:15 - 4 réponses
Posté le 21 novembre 2011 - 17:15
Bonjour,
j'utilise des bases HF et MySQL et j'ai l'habitude d'utiliser en Mysql la commande GROUP_CONCAT() pour ceux qui connaissent.

Cette commande n'existe pas en HF apparemment, est-ce que qq'un connaitrait une commande equivalente svp ?

(cette commande sert lors d'un Group By à concaténer chaque éléments groupés, par ex select client,group_concat(num_cmd) from cmd group by client permet d'afficher sur une seulle ligne les n° commande de chaque clients :
client 1 ! 223,354,856,955
client 2 ! 125,256,363,564,698
...)
Posté le 21 novembre 2011 - 18:18
Il n'y a pas d'équivalent et comme HF ne supporte pas non plus les requetes récursives, il faut faire un traitement côté client.
Posté le 21 novembre 2011 - 18:59
c'est bien ce qu'il me semblait, tant pis, merci pour d'avoir pris le temps de me répondre
Membre enregistré
55 messages
Posté le 21 août 2016 - 17:49
Bonjour à tous,

Je relance le topic 5 ans après pour les nouveaux qui comme moi commencent sur Windev. Il semblerait que la commande STRING_AGG soit la solution.

Un exemple :
SELECT Hobby.IDBuddy, STRING_AGG(CONCAT(Loisirs.FamilleLoisirs, ', ', Loisirs.Libellé),' - ') AS ListeDeLoisirs FROM Loisirs INNER JOIN Hobby ON Loisirs.IDLoisirs=Hobby.IDLoisirs GROUP BY Hobby.IDBuddy
Membre enregistré
89 messages
Posté le 22 août 2016 - 09:18
Le post date de 2011 (version 16) et STRING_AGG est apparue en version 17

--
Christophe Navarro
Développeur freelance Windev, Webdev, Windev Mobile, MySql
http://www.krinasoft.fr
Perpignan