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

Requêtes MySQL Discussion :

Pb de doublons relatifs dans une table


Sujet :

Requêtes MySQL

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 21
    Points : 20
    Points
    20
    Par défaut Pb de doublons relatifs dans une table
    Bonjour

    dans une table a, 2 champs (article, date)
    les enregistrements se doublonnent sur article

    ex :
    1250ah, 2009-01-03
    1250ah, 2009-01-23

    comment faire pour supprimer l'enregistrement dont la date est la plus ancienne soit
    1250ah, 2009-01-03

    j'ai bien trouvé une solution avec une table intermédiaire b, mais cela oblige à lancer deux requêtes.
    1) alimenter b avec les articles doublonnés dont la date est la plus récente
    2) supprimer dans a les articles présents dans b et dont la date est différente de celle de b

    y aurait il plus simple ?

    merci par avance de vos idées

    claude

  2. #2
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Saluton,
    Et pourquoi la colonne article n'était-elle pas déclarée UNIQUE ?
    En regardant dans la FAQ tu trouveras un lien vers une article qui traite de l'éradication des doublons et pseudo-doublons.
    http://sqlpro.developpez.com/cours/doublons/

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 21
    Points : 20
    Points
    20
    Par défaut les doublons
    Bonjour

    j'ai bien évidemment potassé la FAQ avant de poster

    si le champ article n'est pas déclaré unique, c'est que les données qui s'y rattachent évolues tous les jours, notemment ce qui m'interresse à savoir les manquants stock.

    chaque jour je récupère les données de la veille et les compare à celles de l'avant veille. j'update ma table des nouveaux articles manquants, mais aussi de ceux pour lesquels les valeurs ont évoluées.

    mon delete devant servir à supprimer les doublons ainsi créés en supprimant les articles dont la date d'entrée dans la table est la plus ancienne. et ne conserver que les données les plus fraîches.

    cela fonctionne bien avec 2 requêtes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    insert into doublons
    SELECT DISTINCT numero_article,max(date_histo)
    FROM   mqt_ve T1
    WHERE  EXISTS (SELECT *
                   FROM   mqt_ve T2
                   WHERE  t1.numero_article=t2.numero_article)
    group by numero_article
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    delete t1 from mqt_ve t1,doublons t2  where
    t1.numero_article = t2.numero_article And t1.date_histo <> t2.date_histo
    mais je me demande si on ne peut regrouper en 1 seule passe les 2 actions.

    c'est plus du purisme que de l'attente de résultat

    merci en tout cas de ta réponse

    claude

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. supprimer les doublons dans une table
    Par mavean dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 26/06/2019, 13h26
  2. [pl-sql] Recherche de doublons dans une table
    Par tommey dans le forum Oracle
    Réponses: 1
    Dernier message: 08/11/2006, 22h53
  3. Suppression de doublons dans une table partionnée
    Par ludmillaj dans le forum Oracle
    Réponses: 10
    Dernier message: 27/12/2005, 14h34
  4. Eliminer des Doublon dans une Table
    Par Soulama dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 03/02/2005, 14h27
  5. [access]doublons dans une table en access !
    Par hackerandco dans le forum Bases de données
    Réponses: 6
    Dernier message: 14/06/2004, 14h45

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