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 :

supprimer les doublons . . . . d'une colonne donnée !


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 247
    Points : 99
    Points
    99
    Par défaut supprimer les doublons . . . . d'une colonne donnée !
    bonjour,

    Soit la requete suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select id,libelle from bidon order by id, libelle
    J'obtiens le reultat suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    id libelle
    1 baba
    1 bobo
    2 bibi
    3 bcbc
    3 bubu
    3 lolo
    Et je voudrais suprimer les doublons ds la colonne id pour obtenir ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    id libelle
    1 baba
    2 bibi
    3 bcbc
    (1ere ligne de chaque ID)

    Une idée ?
    Le DISTINCT marche bien entendu sur toute une ligne (lors de la repetition de TOUS les attributs)

    Pas de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select id,libelle from bidon group by id order by id, libelle
    puisque le group by va faire ce qu'il faut avant d'ordonner et donc il va pas grouper mes ids comme je veux .... :s

    J'espère que vous me comprenez

    Merci beaucoup

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    En fait c'est surtout que vos couples id, libelle sont TOUS uniques donc le group by n'a aucune incidence.

    Enfin, sachez que :
    Citation Envoyé par pekka77
    1ere ligne de chaque ID
    n'a aucun sens.

    Quel est le critère pour prendre "baba" plutôt que "bobo" par exemple pour l'id = 1 ?

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

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut
    Quel SGBD ?

    1) La requête suivante te donne les libellés "multiples" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Libelle, COUNT(*)
      FROM bidon
      HAVING COUNT (*) >1;
    2) Donc la requête pour retrouver les enregistrements en double est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT id, Libelle
      FROM Bidon
     WHERE Libelle IN 
    (SELECT Libelle
       FROM bidon
       HAVING COUNT (*) >1);
    Par contre, comme dit Magnus, le langage ne peut décider seul des lignes à supprimer

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/05/2014, 13h48
  2. Supprimer les doublons dans une colonne avec condition
    Par sims92.66 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 22/02/2012, 18h58
  3. [MySQL] Supprimer les doublons dans une colonne PHP lors de l'affichage
    Par Gazell dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 18/08/2011, 11h41
  4. [vbexcel]Comment supprimer les doublons dans une combobox?
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 20
    Dernier message: 24/11/2005, 11h12
  5. Comment compter les doublons d'une colonne?
    Par Dnx dans le forum Langage SQL
    Réponses: 8
    Dernier message: 07/11/2005, 10h50

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