posté le 02-06-2005 à 14:00:52
encore une fois, j'en appelle a la grande maitrise de mysql de lego ...
(tu le dis si j'abuse hein ^^)
j'ai une table dans laquelle se trouvent, a chaque ligne, un nom (unique), et une categorie (pas unique)
je souhaiterais pouvoir afficher la liste des categories, sans avoir de doublons ...
par exemple :
objet1 | categorie1
objet2 | categorie2
objet3 | categorie1
ne doit pas m'afficher 'categorie1, categorie2, categorie1' ... mais seulement 'categorie1, categorie2'
Commentaires
mdr demain jte fait un super article sur les critères de choix
Justement mon papa et ma maman ont acheté cet après-midi un lave-vaisselle Brand. Ils ont eu du mal à voir la différence entre les modèles à part la marque et le prix...
Qu'en pense la spécialiste ?
Marielle a donné la solution.
Mais si tu demandes plusieurs valeurs dans ta clause select, avec mysql il vaut mieux mettre entre parenthèses : disctinct(categories)
Avec une clause 'group by', ce n'est pas necessaire de mettre distinct. Par exemple, les deux requetes suivantes montrent la liste des categories avec le nombre d'entrées dans chaque :
select disctinct(categories),count(id) from machin group by categories
select categories,count(id) from machin group by categories
Enfin , ton modèle de construction de base est limité, car une entrée ne peut pas se trouver dans plusieurs catégories, ce qui pourtant peut vite arriver. Dans ce cas, il faut faire une table pour les catégories, une table pour les noms et une table relationelle entre les deux avec bien sûr un ou des index bien placés
vi c'est sur...remarque ça peut servir ds la vie de tous les jours, si jamais un jour vs voulez acheter un nvo lave vaisselle, lave linge, frigo...demandez moi et je vs donnerai tous les critères de choix et celui qui vs correspondrez le mieux! looool bah quoi c'est pas utile ça??? loool bon ok j'arrête de triper tte seule
Je n'ai fait que traduire sa phrase.
Pour mon TP noté de SQL dans 10 jours, je dois savoir faire des requêtes bien plus complexes que celle-ci, avec des sous-requêtes, etc.
Par contre, si quelqu'un demande la recette des crêpes ou de la sauce béchamel par exemple, je serai incapable de lui dire, alors que toi, tu lui donnerais la réponse sans aucun souci. Chacun son domaine.
en effet c'est simple comme bonjour voyons
SELECT DISTINCT Categorie FROM taTable;
C'est tout simple !