SQL : Quand ne faut il pas mettre de DISTINCT
Fermé
tozinho92
-
8 janv. 2008 à 23:48
phil_232 Messages postés 286 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 12 juin 2008 - 9 janv. 2008 à 23:31
phil_232 Messages postés 286 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 12 juin 2008 - 9 janv. 2008 à 23:31
A voir également:
- SQL : Quand ne faut il pas mettre de DISTINCT
- Logiciel sql - Télécharger - Bases de données
- Jointure sql ✓ - Forum MySQL
- Requête sql date supérieure à ✓ - Forum Programmation
- Récupération serveur sql - Télécharger - Gestion de données
- Ora-00933: la commande sql ne se termine pas correctement ✓ - Forum Oracle
4 réponses
phil_232
Messages postés
286
Date d'inscription
jeudi 6 décembre 2007
Statut
Membre
Dernière intervention
12 juin 2008
33
9 janv. 2008 à 23:31
9 janv. 2008 à 23:31
un DISTINCT s'utilise pour éliminer des doublons dans une requête. souvent cela peut-être évité par un design propre de sa bdd et les requêtes. en fait le DISTINCT a une grande influence sur la performance du serveur bdd. l'histoire derrière est que pour éliminer les doublons le moteur de la bdd doit d'abord faire un tri sur la totalité des enregistrement trouvé (bon ca va pour qq 100 ligne mais après ça peut se faire remarquer). ensuite le serveur doit parcourir le résultat et puis éliminer les doublons. il est donc complètement faux de dire qu'on peut l'utiliser à volonté. en fait on essaye à tout prix de l'éviter.
guitou429
Messages postés
198
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
17 septembre 2012
17
9 janv. 2008 à 01:04
9 janv. 2008 à 01:04
Tu peux utiliser le DISTinct dans tout type de requetes, elle permet simplement de sélectionner une seule fois le champ entre parenthèse. Aucun pb avec les clauses having et group by
c'est pas s'queu je te demande lol, j'avais bien compris son utilité :).
Le probleme c'est que une fois que les requete deviennent compliké et que dans mon select j'ai 3 attribut et dans mon where j'ai des conditions sur 4 autres, ben la je memelle un peu lespinceaux, parceke dans ma tete j'essaye de séléctionné les 3 premier attribut, et petit a petit de retirer les lignes qui respectent pas mé 4 condtion dans le where et essayé tant bien que mal de trouvé si il reste des doublons, mais comme tu peux ten douté ca devient assez coton, et quand c aussi compliké, je ny arrive que tres rarement.
Mon probleme c ke je pense ke c pas la bonne façon de procédé, et je voudrais savoir si ya une maniere plus simple que la mienne de trouvé si y reste des doublons.
Voila, si tu pouvais repondre à ce probleme ca ce sré pas mal ;) !
Le probleme c'est que une fois que les requete deviennent compliké et que dans mon select j'ai 3 attribut et dans mon where j'ai des conditions sur 4 autres, ben la je memelle un peu lespinceaux, parceke dans ma tete j'essaye de séléctionné les 3 premier attribut, et petit a petit de retirer les lignes qui respectent pas mé 4 condtion dans le where et essayé tant bien que mal de trouvé si il reste des doublons, mais comme tu peux ten douté ca devient assez coton, et quand c aussi compliké, je ny arrive que tres rarement.
Mon probleme c ke je pense ke c pas la bonne façon de procédé, et je voudrais savoir si ya une maniere plus simple que la mienne de trouvé si y reste des doublons.
Voila, si tu pouvais repondre à ce probleme ca ce sré pas mal ;) !
guitou429
Messages postés
198
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
17 septembre 2012
17
9 janv. 2008 à 19:42
9 janv. 2008 à 19:42
en effet ca a l'air compliqué rien qu'a l'explication. Je comprend ton soucis mais pour cela il faudrait la requete sous les yeux si ce nest as trop demandé et regardé ensemble ce qui ne vas pas.
Mais en effet ca al'air bien complexe lol
Mais en effet ca al'air bien complexe lol