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 :

Doublons dans la base de données


Sujet :

Requêtes MySQL

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Décembre 2018
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Doublons dans la base de données
    Bonjour,

    Je travaille actuellement sur l'exportation de données d'une base de données.

    Ma requête fonctionne excepté le fait que la requête renvoie un doublon absolu qui je pense est déjà présent dans la table mais que je ne veux pas dans mon exportation.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
     
    SELECT ajout.Repere AS Code,
    convert(varchar(4),datepart(yy,time),10)
    +'/'+RIGHT ('0'+convert(varchar(3),datepart(mm,time),10),2)
    +'/'+RIGHT ('0'+convert(varchar(3),datepart(dd,time),10),2)
    +' '+RIGHT ('0'+convert(varchar(3),datepart(hh,time),10),2)
    +':'+RIGHT ('0'+convert(varchar(3),datepart(mi,time),10),2)
    +':'+RIGHT ('0'+convert(varchar(3),datepart(ss,time),10),2) as Date,
    Cumul AS Valeur,
    Index.Unit
     
    FROM ajout
     
    INNER JOIN Index ON ajout.Repere=Index.Repere
    WHERE DATEDIFF(d,time,GETUTCDATE())=1
     
    ORDER BY time, ajout.Repere
    Dans l'extraction, je trouve malheureusement un doublon absolu (c'est à dire completement identique)
    Est-ce qu'un SELECT DISTINCT à la place du SELECT serait judicieux ?

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 136
    Points : 38 561
    Points
    38 561
    Billets dans le blog
    9
    Par défaut
    Bonjour,

    Distinct est effectivement fait pour éliminer les doublons

    Sinon, c'est bien compliqué vos fonctions chaines de caractères. En plus vous utilisez du varchar pour des chaines de longueur fixe, c'est aberrant .
    Vous voulez obtenir quoi exactement avec toutes ces opérations

  3. #3
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 381
    Points : 19 064
    Points
    19 064
    Par défaut
    Salut à tous.

    Je ne sais pas trop si vous vous êtes trompé de forum mais ici c'est pour faire du MySql.
    Je dis cela car il me semble que vous utilisez "+" pour faire une concaténation.
    Or en mysql, c'est la fonction "concat(...)" qui gère cela.
    De plus, vous utilisez la fonction "convert" pour transformer un type dans un autre. En MySql, c'est plutôt "cast()" qui gère cela.
    Et vous utilisez "datepart()" pour extraire un format de la colonne "time".
    En MySql, c'est plutôt "date_format()" qui réalise cela.
    Cela ressemble beaucoup à du Microsoft SQL Server, n'est-ce pas.


    Citation Envoyé par jfardel
    Est-ce qu'un SELECT DISTINCT à la place du SELECT serait judicieux ?
    Oui, pourquoi. Sinon, vous avez aussi le "group by" qui permet de rendre unique les doublons.

    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

Discussions similaires

  1. Comment réperer les doublons dans une base de données?
    Par Marc31 dans le forum Langage SQL
    Réponses: 9
    Dernier message: 16/07/2015, 16h29
  2. intégrer un fichier image dans une base de donnée?
    Par Lody dans le forum Requêtes
    Réponses: 9
    Dernier message: 16/03/2006, 19h08
  3. doublon dans la base de donnée
    Par franfr57 dans le forum ASP
    Réponses: 5
    Dernier message: 13/03/2006, 20h36
  4. [Strategie][Java][XML] Import dans une base de données
    Par nad dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 23/09/2002, 11h12

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