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

Excel Discussion :

tri des données en sql


Sujet :

Excel

  1. #1
    Membre très actif
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Avril 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 212
    Par défaut tri des données en sql
    bonjour
    j'ai une base de données Access, où toutes les données sont enregistrées dedans au format texte, et je ne peux pas modifier ces données!

    je souhaiterais récupérer les dates du champ (cloture) via sql depuis excel en vba

    mais trié dans l'ordre, et sans doublon

    sans doublon, ça fonctionne, mais c'est le tri qui ne fonctionne pas


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'définition de la requette sql( date de cloture)
    TexteSQL_date_de_cloture = "SELECT DISTINCT [cloture] FROM [feuille atdec] WHERE [produit] IS NOT NULL and [cloture]IS NOT NULL ORDER BY [cloture]"

    vous auriez une idée?

  2. #2
    Membre Expert
    Avatar de tototiti2008
    Homme Profil pro
    Formateur/développeur
    Inscrit en
    Octobre 2008
    Messages
    1 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur/développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 078
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    Pour te répondre il faudrait connaître la forme de tes dates stockées en texte dans le champ cloture

    si du type "15/12/2010"

    remplace la fin de ta requête par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORDER BY dateserial(right([cloture],4),mid([cloture],4,2),left([cloture],2))

  3. #3
    Membre très actif
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Avril 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 212
    Par défaut
    bonsoir
    merci pour ta réponse
    le format de mes dates dans la base de données access est 19/12/2019

    j'ai essayé ta solution, mais, ça me génère une erreur

    Nom : Annotation 2019-12-19 191500.jpg
Affichages : 126
Taille : 12,5 Ko

  4. #4
    Membre Expert
    Avatar de tototiti2008
    Homme Profil pro
    Formateur/développeur
    Inscrit en
    Octobre 2008
    Messages
    1 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur/développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 078
    Billets dans le blog
    2
    Par défaut
    Re,

    Et comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORDER BY cdate([cloture])

  5. #5
    Membre très actif
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Avril 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 212
    Par défaut
    j'ai toujours la même erreur
    je ne comprend pas?

  6. #6
    Membre Expert
    Avatar de tototiti2008
    Homme Profil pro
    Formateur/développeur
    Inscrit en
    Octobre 2008
    Messages
    1 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur/développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 078
    Billets dans le blog
    2
    Par défaut
    Tu dois avoir des dates vides

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORDER BY iif([cloture] is null, 1000000, cdate([cloture]))

  7. #7
    Membre très actif
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Avril 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 212
    Par défaut
    merci de m'aider, mais j'ai toujours la même erreur


    dans le résultat de ma requette, je n'ai aucune date vide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TexteSQL_date_de_cloture = "SELECT DISTINCT [cloture] FROM [feuille atdec] WHERE [cloture] <>'""' and [cloture]IS NOT NULL ORDER BY iif([cloture] is null, 1000000, cdate([cloture]))"

  8. #8
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2013
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2013
    Messages : 122
    Par défaut
    Bonjour
    Je peux me tromper mais un 'select distinct' nécessite un 'group by'

  9. #9
    Membre très actif
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Avril 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 212
    Par défaut
    là je ne sais pas, j'ai cherché mais j'ai pas trouvé comment utilisé group by pour mon cas

    par contre je viens de voir, si j'enlève le distinct après le select, je n'ai plus d'erreur, et le tri est bien fait, sauf que j'ai plein de doublon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TexteSQL_date_de_cloture = "SELECT  [cloture] FROM [feuille atdec] WHERE [cloture] <>'""' and [cloture]IS NOT NULL ORDER BY cdate([cloture])"

  10. #10
    Membre Expert
    Avatar de tototiti2008
    Homme Profil pro
    Formateur/développeur
    Inscrit en
    Octobre 2008
    Messages
    1 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur/développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 078
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    en effet distinct et order by semblent en conflit
    pour moi group by n'est à utiliser que si on veut faire des calculs, mais ça peut se discuter

    peut-être décomposer alors

    du type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT conv.dte FROM
    (SELECT DISTINCT CDate([feuille atdec].cloture) AS Dte
    FROM [feuille atdec]
    WHERE [feuille atdec].[cloture] Is Not Null And [feuille atdec].[cloture]<>"")  AS [conv]
    ORDER BY  conv.dte

  11. #11
    Membre très actif
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Avril 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 212
    Par défaut
    pareil erreur système avec ta requette tototiti2008
    par contre je pense que tu approche du résultat, car je dirais qu'il faut imbriqué une requette dans une autre, mais là c'est plus de mon niveau

  12. #12
    Membre Expert
    Avatar de tototiti2008
    Homme Profil pro
    Formateur/développeur
    Inscrit en
    Octobre 2008
    Messages
    1 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur/développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 078
    Billets dans le blog
    2
    Par défaut
    La requête que je t'ai fourni marche sur mon Access pourtant
    Attention aux guillemets si tu veux l'intégrer en VBA


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TexteSQL_date_de_cloture = "SELECT conv.dte FROM (SELECT DISTINCT CDate([feuille atdec].cloture) AS Dte FROM [feuille atdec] WHERE [feuille atdec].[cloture] Is Not Null And [feuille atdec].[cloture]<>"""")  AS [conv] ORDER BY conv.dte"

  13. #13
    Membre très actif
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Avril 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 212
    Par défaut
    parfait
    merci bien, tu m'as bien aidé sur ce coup là

Discussions similaires

  1. Requête sql complexe (tri des données)
    Par peofofo dans le forum Requêtes
    Réponses: 5
    Dernier message: 30/06/2008, 14h04
  2. Sous formulaire, requete SQL et Tri des données
    Par yanouil dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 11/07/2007, 07h16
  3. tri des données différent entre 2 bases
    Par j6m dans le forum Oracle
    Réponses: 2
    Dernier message: 12/03/2006, 10h17
  4. [JTable] Tri des données
    Par soulhouf dans le forum Composants
    Réponses: 7
    Dernier message: 08/09/2005, 14h01
  5. Importer des données dans sql server avec DELPHI ???
    Par moutanakid dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/08/2004, 17h22

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