IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Propriete SQL Distinct


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Juin 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 1
    Par défaut Propriete SQL Distinct
    Bonjour,

    J'ai une table avec 10 champs : je souhaite effectuer un requete simple du type :
    SELECT DISTINCT CHAMP1, CHAMP2,CHAMP3,CHAMP4,CHAMPS5, CHAMP6 FROM MA TABLE WHERE CHAMP1 = 'TEST4'

    Cette requête me renvoie bien les données distinctes concernant la clause WHERE mais comment faire pour récupérer en plus les autres champs (CHAMP7,CHAMP8,CHAMP9 et CHAMP10 qui ne doivent pas être distincts).

    Merci

  2. #2
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 16
    Par défaut
    Je pense que ta solution demande un group by, mais je suis loin de manier l'outil avec dextérité...
    Peux tu nous donner un exemple de données dans ta table, et le résultat que tu souhaiterais ?
    Parce que là, je n'y vois pas très clair.

  3. #3
    Xo
    Xo est déconnecté
    Membre Expert
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Par défaut
    Un DISTINCT sert effectivement à filtrer les doublons sur la liste de champs spécifiés dans la requête : on ne peut faire un DISTINCT sur un champ et vouloir récupérer les autres valeurs des champs, c'est incohérent.

    La solution via un GROUP BY est du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     SELECT CHAMP1, CHAMP2, CHAMP3, CHAMP4, CHAMPS5, CHAMP6 
      FROM MA_TABLE 
     WHERE ...
     GROUP BY CHAMP2, CHAMP3, CHAMP4, CHAMPS5, CHAMP6
    ça te renverra tous les valeurs distinctes de "CHAMP2, CHAMP3, CHAMP4, CHAMPS5, CHAMP6" par valeur "distincte" de CHAMP1.
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

Discussions similaires

  1. débutant SQL : DISTINCT
    Par free07 dans le forum Langage SQL
    Réponses: 15
    Dernier message: 13/11/2009, 09h44
  2. Requete SQL distinct count
    Par abouportant dans le forum Langage SQL
    Réponses: 1
    Dernier message: 03/03/2008, 08h55
  3. SQL Distinct Count
    Par Spanish_ dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 19/11/2007, 15h43
  4. [SQL]DISTINCT et INSERT >> violation de clé ?
    Par killkool2001 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 25/05/2007, 11h57
  5. REQUETE SQL : distinct / first
    Par partner35000 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 31/03/2006, 12h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo