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 :

Elimination de doublons (paires inverses)


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 45
    Points : 30
    Points
    30
    Par défaut Elimination de doublons (paires inverses)
    Bonjour à tous,

    J'ai une requête qui me retourne des paires (entre autres, pour simplifier) :

    1,2
    3,4
    2,1
    5,6
    4,3

    et je voudrais supprimer du résultat les paires inverses :

    2,1
    4,3

    je ne voudrais garder que :

    1,2
    3,4
    5,6

    Est-ce possible en 1 seule requête ?

    Merci beaucoup par avance.

    Laurent.

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    bonjour, utilisez un > ou < pour votre jointure

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 45
    Points : 30
    Points
    30
    Par défaut
    punkoff : merci pour votre réponse.

    Pouvez-vous détailler votre réponse, svp ?

    Comment faire des jointures avec < ou > ?

    Laurent.

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Points : 1 199
    Points
    1 199
    Par défaut
    Bonjour,
    punkoff aurait surement détaillé sa réponse si tu avais nommé tes deux colonnes.
    Donc en admettant que tu aies une table couple avec deux colonnes a et b, qui contiennent toujours les deux couples (x, y) et (y,x), si tu n'en veux qu'un tu prends celui tel que a<b
    Ce que tu veux, c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select a,b from couple where a<b
    Après comme tu as simplifié peut-être cela ne s'applique pas.
    Cordialement
    Soazig

  5. #5
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Essayez ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    With MaTable (c1, c2) as
    (
    select 1, 2 union all
    select 3, 4 union all
    select 2, 1 union all
    select 5, 6 union all
    select 4, 3 union all
    select 9, 8
    )
    select t1.c1, t1.c2
      from MaTable as t1
     where not exists (select null
                         from MaTable as t2
                        where t2.c1 = t1.c2
                          and t2.c2 = t1.c1
                          and t2.c1 < t1.c1);
     
    c1          c2
    ----------- -----------
    1           2
    3           4
    5           6
    9           8

Discussions similaires

  1. Eliminer les doublons dans un tableau d'entiers
    Par engi dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 21/03/2006, 13h59
  2. Eliminer les doublons d'un tableau de hachage
    Par dreydrey dans le forum Langage
    Réponses: 21
    Dernier message: 15/11/2005, 15h03
  3. Elimination des doublons
    Par amika dans le forum Requêtes
    Réponses: 8
    Dernier message: 05/11/2005, 09h28
  4. Elimination des doublons
    Par bilalove dans le forum Oracle
    Réponses: 3
    Dernier message: 11/08/2005, 13h53
  5. Eliminer des Doublon dans une Table
    Par Soulama dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 03/02/2005, 14h27

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