Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2953 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MarketingCloud] tri de groupes en ne récupérant que le 1er élément

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MarketingCloud] tri de groupes en ne récupérant que le 1er élément

n°2429150
benj63
Posté le 13-10-2022 à 14:14:26  profilanswer
 

Bonjour,
 
Je dispose d'une table avec les champs suivants :

siret | nom | fonction  
------|-----|----------
222222| DDD | assistant
111111| AAA | directeur
111111| BBB | président
111111| CCC | assistant
222222| EEE | directeur
333333| GGG | directeur
333333| FFF | assistant


 
Je souhaiterai trier par fonction (1. président, 2. directeur, 3. assistant) et n'avoir en sortie que le premier élément pour chaque siret.
Pour le tri, j'ai trouvé sous MySQL :

select * from ma_table ORDER BY siret, CASE  
         WHEN fonction = 'président' THEN 1
         WHEN fonction = 'directeur' THEN 2
         WHEN fonction = 'assistant' THEN 3


 
A l'issue du tri, j'obtiens :

siret | nom | fonction  
------|-----|----------
111111| BBB | président
111111| AAA | directeur
111111| CCC | assistant
222222| EEE | directeur
222222| DDD | assistant
333333| GGG | directeur
333333| FFF | assistant


 
Reste que je voudrais obtenir à la fin uniquement :

siret | nom | fonction  
------|-----|----------
111111| BBB | président
222222| EEE | directeur
333333| GGG | directeur


 
Comment ne conserver que le premier élément de chaque siret trié sur la fonction ?
 
Merci d'avance pour vos idées, j'ai testé pas mal de choses mais je sèche !


Message édité par benj63 le 13-10-2022 à 15:44:02
mood
Publicité
Posté le 13-10-2022 à 14:14:26  profilanswer
 

n°2429159
rufo
Pas me confondre avec Lycos!
Posté le 13-10-2022 à 14:38:31  profilanswer
 

GROUP BY siret
 
Sur du Mysql 8, il va peut-être râlé parce que c'est pas du SQL standard (normalement, un group by doit contenir tous les champs du SELECT sauf ceux d'agrégation). Mais il suffit de retirer l'option ONLY_FULL_GROUP_BY dans le fichier de conf de mysql pour que ça passe.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2429160
benj63
Posté le 13-10-2022 à 14:42:13  profilanswer
 

rufo a écrit :

GROUP BY siret
 
Sur du Mysql 8, il va peut-être râlé parce que c'est pas du SQL standard (normalement, un group by doit contenir tous les champs du SELECT sauf ceux d'agrégation). Mais il suffit de retirer l'option ONLY_FULL_GROUP_BY dans le fichier de conf de mysql pour que ça passe.


Oui c'est ce que j'avais tenté mais il râle. Je vais voir pour désactiver l'option.... mais si ce n'est pas possible de la désactiver ?

n°2429166
rufo
Pas me confondre avec Lycos!
Posté le 13-10-2022 à 15:03:05  profilanswer
 

Pourquoi ça ne le serait pas ?
Il me que c'est le genre de paramètre qu'on peut faire passer par requête SQL en début de session de connexion.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2429168
benj63
Posté le 13-10-2022 à 15:43:22  profilanswer
 

rufo a écrit :

Pourquoi ça ne le serait pas ?
Il me que c'est le genre de paramètre qu'on peut faire passer par requête SQL en début de session de connexion.


En effet  :)  
 
Enfin j'ai à présent un autre souci, ça marche bien sous MySQL mais sous le logiciel final (Marketing Cloud de Salesforce), j'ai ça :
https://i.imgur.com/o2uZYMn.png
 :(


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MarketingCloud] tri de groupes en ne récupérant que le 1er élément

 

Sujets relatifs
Récuperer des valeurs de ma BDD MYSQL lorsque rempli une case Formulaiélément d'ancrage
MYSQL: vrai timestamp?Rajouter date après premier espace dans noms de fichiers
Exercice html, php, mysql, javascriptExcel+PHP/Mysql
[Powershell] Script pour clonage groupes Office 365[Résolu] Pb de regexp avec Mysql
MySQL : forcer la position d'un résultat ?Android java quelle application tourne au premier plan ?
Plus de sujets relatifs à : [MarketingCloud] tri de groupes en ne récupérant que le 1er élément


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR