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

MS SQL Server Discussion :

script pour effacer doublons


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 98
    Par défaut script pour effacer doublons
    Bonjour,

    Voici mon pb, j'ai une table qui a à peu près cet aspect
    clétable foreignkey valeur date
    '0001' '5678' 0,2 11/10/2006
    '0002' '5679' 0,245 12/10/2006
    '0003' '5679' 0,245 12/10/2006
    '0004' '5680' 0,3 13/10/2006

    or, la base a été mal conçue. Pour chaque couple foreignkey + date, on ne devrait avoir qu'une seule valeur.

    Ma question est maintenant comment faire pour écrire un script ou une procédure qui efface les doublons (dans l'exemple ne garder qu'une des deux lignes pour le 12/10/2006

    Merci

    Isa

  2. #2
    Membre Expert
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Par défaut
    Bonjour,

    Quelque chose comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT DISTINCT * INTO dbo.matable_temp FROM dbo.matable 
    DELETE FROM dbo.matable 
    INSERT INTO dbo.matable 
    SELECT * FROM dbo.matable_temp
    Un backup avant sera plus sûr.

  3. #3
    Membre expérimenté
    Inscrit en
    Février 2006
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 185
    Par défaut
    Bonjour

    Tu peux aussi essayer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    delete from ma_table a where clé_table<any 
    (select b.clé_table from ma_table b where a.foreignkey=b.foreignkey
    and a.date=b.date and a.clé_table<>b.clé_table)
    Mais selectionne ces données avant d'appliquer le delete pour etre sur qu'elles sont uniques.

    Merci
    Citation Envoyé par isachat666
    Bonjour,

    Voici mon pb, j'ai une table qui a à peu près cet aspect
    clétable foreignkey valeur date
    '0001' '5678' 0,2 11/10/2006
    '0002' '5679' 0,245 12/10/2006
    '0003' '5679' 0,245 12/10/2006
    '0004' '5680' 0,3 13/10/2006

    or, la base a été mal conçue. Pour chaque couple foreignkey + date, on ne devrait avoir qu'une seule valeur.

    Ma question est maintenant comment faire pour écrire un script ou une procédure qui efface les doublons (dans l'exemple ne garder qu'une des deux lignes pour le 12/10/2006

    Merci

    Isa

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 49
    Par défaut Lien utile
    Moi j'avais trouvé des infos et exemples bien utiles par ici:

    http://sqlpro.developpez.com/cours/doublons/

Discussions similaires

  1. Script pour effacer des fichiers après x jours
    Par Chakalaka dans le forum Débuter
    Réponses: 4
    Dernier message: 14/04/2011, 18h55
  2. Choix pour un script pour effacer des fichiers
    Par mindover280 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 22/07/2007, 23h42
  3. script pour demander une confirmation avant d effacer
    Par pierrot10 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 09/10/2006, 10h46
  4. Réponses: 2
    Dernier message: 16/08/2006, 14h47
  5. Script pour effacement récursif
    Par Filippo dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 09/01/2005, 17h10

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