Reformattage resultats requete ligne colonne pivo

Résolu/Fermé
archivage-services - 28 juin 2018 à 21:14
 archivage-services - 29 juin 2018 à 16:44
Bonjour,

Bonjour,

La fonction group_concact n'existant pas , j'ai essayé de refomatter avec des cases, pivot mais sans succès, aussi je soumet mon problème....

J'ai une table qui contient les données suivantes :

ID;DESC;DATE;NAME;NAME2
1;madesc;28/06/2018;null;null
1;madesc;null;myname;null
1;madesc;null;null;myname2
2;madesc2;29/06/2018;null;null
2;madesc;null;myname;null
2;madesc;null;null;myname2

Je souhaite obtenir le résultat suivant :

ID;DESC;DATE;NAME;NAME2
1;madesc;28/06/2018;myname;mysurname
2;madesc2;29/06/2018;myname2;mysurname2

Pour info;, la table présenté est déjà le résultat d'une requête, aussi peut etre vaut mieux-t-il que je construise une vue sur la table de base ....

Merci pour les pro du pivot ou unpivot ou d'autre méthode que je ne connais pas ..

A voir également:

2 réponses

Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
29 juin 2018 à 16:37
Bonjour,

Effectivement, je pense que ton résultat intermédiaire n'est pas la bonne base pour arriver au résultat voulu.
Ceci dit, tu peux essayer quelque chose comme ça :
select ID, [DESC], max([DATE]), max([NAME]), max(NAME2) from truc group by ID, [DESC]

(À condition, on est d'accord, que ta table vérifie les conditions suivantes :
- Pour chaque ID, on a exactement TROIS lignes, chacune ayant respectivement DATE, NAME et NAME2 de rempli ; le reste à NULL
- Chaque ligne avec un ID identique possède un DESC identique.)

Xavier
0
archivage-services
29 juin 2018 à 16:44
Merci , effet , j'ai essayé cette méthode et cela reponds en fonction des conditions évoquées...
0