Bonjour, j'ai une table de tarifs dans laquelle il peut y avoir des doublons, pour une même référence plusieurs prix, attention les prix ne peuvent pas être identiques pour la même référence. Je souhaite, en fonction du choix de l'utilisateur exécuter une requête permettant de ne conserver de façon "DISTINCT" que l'enreg ayant le prix le plus élevé.
jeu d'essai
Je sais extraire les doublons voilà ma requête
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 tararef tarapnt LS332 10.223 LS432 2.320 LS907 2.570 LS907 3.670 LS907 5.270 LS934 2.556 LS934 3.045 LS934 4.000
Ce que je souhaite obtenir pour ce jeu d'essai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 SELECT tararef, tarapnt FROM `tarifach` WHERE `TARAREF` IN (SELECT t2.`TARAREF` FROM tarifach AS t2 GROUP BY t2.`TARAREF` HAVING COUNT( t2.`TARAREF` ) >=2 ) résultat de cette requête sur un jeu d'essai tararef tarapnt LS907 2.570 LS907 3.670 LS907 5.270 LS934 2.556 LS934 3.045 LS934 4.000
Tous les autres enregs de ta table n'ayant pas de doublons plus LS907, 5.270 et LS934, 4.000
résultat après DELETE
TARAREF étant, vous l'aurez compris, la référence de l'article et TARAPNT étant le prix net de ce dernier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 LS332 10.223 LS432 2.320 LS907 5.270 LS934 4.000
merci de m'aider à énoncer cette requête
Partager