Supprimer les doublons dans une table

Gleude25 Messages postés 95 Date d'inscription   Statut Membre Dernière intervention   -  
Gleude25 Messages postés 95 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Comment faire pour supprimer le doublon le plus ancien dans une table ?

Merci d'avance !



--
Un concerné n'est pas obligatoirement un imbécile encerclé.
Pierre Dac

2 réponses

  1. jee pee Messages postés 31962 Date d'inscription   Statut Modérateur Dernière intervention   10 008
     
    Salut,

    Tu devrais préciser sur quel SGBD car les solutions pourraient être différentes.

    Sous Oracle (valable aussi pour les doublons) :

    delete from table where 
        (cle,rowid) in 
        ( 
            ( 
             select cle,rowid from table where 
             (cle) in 
                ( 
                 select cle from table 
                    group by cle having count(*) > 1 
                ) 
            ) 
            minus 
            ( 
            select cle,max(rowid) from table 
                    group by cle having count(*) > 1 
            ) 
        ) 
    /


    cdlt

    Un étranger, c'est un ami qu'on n'a pas encore rencontré.
    0
  2. Gleude25 Messages postés 95 Date d'inscription   Statut Membre Dernière intervention   9
     
    Non désolé, j'avais oublié de préciser que je travaillais sous Access 2007.

    cdlt
    Un concerné n'est pas obligatoirement un imbécile encerclé.
    Pierre Dac
    0