edit : Je n'ai peut être pas posté dans la section la plus adaptée, si un modérateur peut déplacer le sujet dans la section Mysql.
Bonjour à tous, je suis confronté à un souci, voici l'énoncé :
j'ai une table comme ci après sur une base Mysql :
Alors la Data1, Data2 et Data3 c'est juste des tinyint, Le data4 c'est un varchar qui peut prendre 2 valeurs et le data5 c'est un texte qui diffère à chaque enregistrement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 ID - Data1 - Data2 - Data3 - Data4 - Data5 1 1 5 1 A X 2 1 5 1 A Y 3 1 5 1 B Z 4 1 6 2 A U 5 1 6 2 B V ... 15 1 4 15 B G
Ce que je cherche à obtenir en sortie :
En clair je ne veux qu'un A et qu'un B (data4) pour une même data1, data2, et data3. je ne sais pas si je suis très clair, peut-être plus précis par l'exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 ID - Data1 - Data2 - Data3 - Data4 1 1 5 1 A 3 1 5 1 B 4 1 6 2 A 5 1 6 2 B 15 1 4 15 B
le 2ème enregistrement :
Pas besoin de l'afficher dans le résultat, puisqu'il existe déjà un enregistrement avec Data1 = 1, Data2 = 5, Data3 = 1 et data4 = A.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ID - Data1 - Data2 - Data3 - Data4 - Data5 2 1 5 1 A Y
J'espère être assez clair pour que vous puissiez me rendre ce petit service ^^
D'avance merci.
P.S. :
j'ai tenté ce type de requête :
(id_s est une autre colonne de cette table que je n'ai pas mis dans l'exemple).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT DISTINCT `Data1` & "-" &`Data2` & "-" & `Data3` & "-" & `data4` AS TP FROM `table` WHERE `id_s` = "5";
Ainsi en concaténant les 4 et en ne prenant pas de doublon, j'ai exactement ce qu'il me faut, ensuite en php j'explode le résultat et je retrouve mes infos.
Sauf que .. cette requête me donne en sortie :
TP
0
Partager