Bonjour,
J'ai un problème avec la fonction DISTINCT.
Je vous montre avec exemple car c'est plus parlant.
Base :
Champ1 | Champ2 | Champ3
1 12/05/2008 14:22:55 3
4 12/05/2008 14:21:55 6
1 12/05/2008 14:20:55 8
Je voudrai faire un 'DISTINCT' seulement du champ1. Jusqu'a là pas de problème il suffie d'introduire un 'DISTINCT' et hop, mais je veux en plus classer avec 'ORDER BY' la colonne Champ2, donc je suis obligé de rajouté 'SELECT DISTINCT Champ1, Champ2'.
Ce qui a pour effet qu'il me prend le champ1 et champ2 avec DISTINCT.
IE : SELECT DISTINCT Champ1, Champ2 FROM Table WHERE Champ2 BETWEEN GETDATE() -1 AND GETDATE() ORDER BY Champ2 ASC;
en gros, je n'ai pas que le Champ1 qui est DISTINCT mais aussi le Champ2 ( obligé de l'ajouté pour 'ORDER BY' )
Comment faire pour que je puisse avec un DISTINCT seul sur le Champ1, mais en meme temps faire un ORDER BY sur le Champ2 pour pouvoir classer le Champ1 par date la plus récente...
Car si je met pas le Champ2 pres de DISTINCT le ORDER BY ne marche pas !!
SELECT DISTINCT Champ1 FROM Table WHERE Champ2 BETWEEN GETDATE() -1 AND GETDATE() ORDER BY Champ2 ASC;
> java.sql.SQLException: ORDER BY items must appear in the select list if SELECT DISTINCT is specified.
Merci de votre aide
Partager