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 9444 Date d'inscription   Statut Modérateur Dernière intervention   9 981
     
    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