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 :

select distinct, sauf sur une colonne


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 93
    Points : 65
    Points
    65
    Par défaut select distinct, sauf sur une colonne
    Bonjour à tous,
    je suis actuellement en train de me galerer sur ma requete.
    En soit, elle est pas compliqué.

    Ca commence comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT DISTINCT a.id_inter, e.nom_clie, a.clie_inter, b.ddeb_acti ....

    Seulement, je voudrais accepter les doublons sur le champ b.ddeb_acti .
    J'ai essayé plein de truc du style:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    SELECT DISTINCT (a.id_inter, e.nom_clie, a.clie_inter), b.ddeb_acti ....
    et tous les dérivés qu'on y trouver...

    J'ai également essayé ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT b.ddeb_acti, GROUP_CONCAT(DISTINCT  a.id_inter, e.nom_clie, a.clie_inter.........
    ...... GROUP BY b.ddeb_acti	.....
    Rien à faire.
    Ya t'il un moyen réel que faire un distinct sur toutes les colonnes sauf une?
    Merci d'avance

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Non

  3. #3
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 104
    Points : 28 397
    Points
    28 397
    Par défaut
    Donne nous un exemple de ce que tu cherches à faire.
    Peut être que ce que tu cherches à faire ne correspond pas à l'usage de distinct ou group by.

  4. #4
    rsc
    rsc est déconnecté
    Membre éprouvé
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Points : 918
    Points
    918
    Par défaut
    Je pense que tu fais une confusion au sujet du DISTINCT :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT DISTINCT Col1, Col2, Col3
    garantit l'unicité des triplets (Val1, Val2, Val3), mais ni l'unicité des Val1, ni celle des Val2 ou des Val3.
    Donc, faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT DISTINCT (Col1, Col2), Col3
    sur Col1 et Col2, mais pas Col3 n'aurait pas de sens : si (Val1, Val2) est unique, à plus forte raison (Val1, Val2, Val3), et les resultats des 2 requêtes seraient identiques.

  5. #5
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 112
    Points : 104
    Points
    104
    Par défaut
    Peut etre que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT a.id_inter, e.nom_clie, a.clie_inter, max(b.ddeb_acti) from
     ta_table group by a.id_inter, e.nom_clie, a.clie_inter
    répond à ton problème...

  6. #6
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 93
    Points : 65
    Points
    65
    Par défaut
    Merci Kiroukool, c'est exactement de ca dont j'avais besoin. Un grand merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL-5.1] Jointure avec * sauf sur une colonne spécifique
    Par bronon dans le forum Requêtes
    Réponses: 10
    Dernier message: 09/10/2014, 12h26
  2. AVG + SELECT sur une colonne ?
    Par brolon dans le forum SQL
    Réponses: 6
    Dernier message: 05/02/2009, 08h05
  3. Réponses: 7
    Dernier message: 10/09/2008, 15h53
  4. Réponses: 3
    Dernier message: 03/05/2007, 11h06
  5. Réponses: 2
    Dernier message: 07/10/2006, 19h46

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