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 :

Problème d'ordre alphabetique varchar


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut Problème d'ordre alphabetique varchar
    Bonjour a tous,

    J'ai un petit souci dans une requete :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select* from facture where date_facture='2007-07-19' order by 1
    Le problème c'est qu'il m'affiche ceci :
    fact_190707_1
    fact_190707_10
    fact_190707_11
    fact_190707_12
    fact_190707_13
    fact_190707_2
    fact_190707_21
    fact_190707_22
    fact_190707_3
    fact_190707_4

    alors que moi j'aimerai qu'il m'affiche ceci :
    fact_190707_1
    fact_190707_2
    fact_190707_3
    fact_190707_4
    fact_190707_10
    fact_190707_11
    fact_190707_12
    fact_190707_13
    fact_190707_21
    fact_190707_22

    Pouvez-vous m'aidez?

    Merci d'avance

  2. #2
    Membre éclairé Avatar de pop_up
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 877
    Points : 786
    Points
    786
    Par défaut
    le tri se fait comme pour l'explorateur de windows. le 10 passe avant le 2 car il considere que '1' est avant '2'

    pour les trier correctement tu doit formatter tes derniers nombres sur le nombres de chiffres que tu veux de maniere a avoir :

    fact_190707_001
    fact_190707_002
    fact_190707_003
    fact_190707_004
    fact_190707_010
    fact_190707_011
    fact_190707_012
    fact_190707_013
    fact_190707_021
    fact_190707_022

  3. #3
    Membre expérimenté Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Points : 1 738
    Points
    1 738
    Par défaut
    Erreur de conception a la base qui va vous couter cher !

    Le moyen le plus propre est de revoir votre generation de n° de facture
    Sinon, vous allez devoir triturer vos données pour en extraire le n° d'ordre (peut etre creer une vue dans ces cas la)

    Bon courage
    Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac)

  4. #4
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    La solution de pop_up marche impec.

    Merci beaucoup.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/08/2005, 11h57
  2. [XSLT]Problèmes d'ordre de lecture et d'écriture
    Par leup dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 11/07/2005, 10h36
  3. [JComboBox] tri par ordre alphabetique
    Par GETah dans le forum Composants
    Réponses: 3
    Dernier message: 22/04/2005, 14h10
  4. order by qui ne classe pas par ordre alphabetique
    Par le_ben dans le forum PostgreSQL
    Réponses: 9
    Dernier message: 21/04/2005, 16h17
  5. URGENt: recherche dans un tableau trié par ordre alphabetiqu
    Par JulPop dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 12/02/2005, 17h21

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