Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2318 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MySQL] Requete et tri

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MySQL] Requete et tri

n°866619
Koybe
Posté le 06-10-2004 à 21:37:08  profilanswer
 

J'ai une requete dans ma base qui est du type
 
"select * from table order by nom"
 
mais "nom" est comme ceci (alphanumérique) : truc 1, truc 2, ...
 
Il me classe cela comme ceci :
truc 1
truc 14
truc 2
 
alors que je voudrais :
truc 1
truc 2
truc 14
 
mais je sais pas comment faire.

mood
Publicité
Posté le 06-10-2004 à 21:37:08  profilanswer
 

n°866653
kalex
Posté le 06-10-2004 à 22:00:21  profilanswer
 

Je ne sais pas comment faire avec mysql. :o
Mais tu peux toujours retraiter les résultats. Par exemple en PHP avec la fonction natsort.

n°866730
sonikbuzz
echo "Hello World!";
Posté le 06-10-2004 à 23:12:44  profilanswer
 

salut,
Tu peu le trier avec php (avec mysql je c pas).
Mais le plus facile et le plus rapide c'est de créer une autre colonne :
 
colonne1 | colonne2
truc     |  1
truc     |  2
 
et com ca ce sera facile a classer

n°866806
Koybe
Posté le 07-10-2004 à 00:47:20  profilanswer
 

Argh ca m'arrange pas trop de le faire en php! Enfin s'il y a que cette solution!

n°866813
Taz
bisounours-codeur
Posté le 07-10-2004 à 01:02:25  profilanswer
 

à ce moment là, vire le orderby, histoire de pas trier 2 fois ...

n°867045
Xav_
The only one...
Posté le 07-10-2004 à 13:54:55  profilanswer
 

une autre méthode, mais ça t'oblige à modifier (par requete si tu en as bcp) tes anciens enregistrements, de manière à avoir:
truc 01
truc 02
truc 14
 
(et penser dès maintenant à prévoir plus de chiffre si tu sais que tu sera amené à gérer 1000 ou 10000 enregistrements plus tard)


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°867114
jagstang
Pa Capona ಠ_ಠ
Posté le 07-10-2004 à 15:13:55  profilanswer
 

mauvaise modélisation de ta base ?


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°867115
Taz
bisounours-codeur
Posté le 07-10-2004 à 15:15:21  profilanswer
 

pourquoi t'as stocké le numéro dans la chaine si c'est si important pour toi ?

n°867276
Koybe
Posté le 07-10-2004 à 18:22:22  profilanswer
 

En fait ce sont des "titres" dans un champ de la base de données, il se fait que certains se présentent comme ca, mais dans l'ensemble, je n'ai pas toujours la même structure de donnée!
 
pour l'instant j'ai :
 
Catalogue 1 : Avril 2004
Catalogue 2 : Mais 2004
etc....
Jusque 20 +/-
 
Mais j'ai aussi :
 
Document concernant l'exposition du 15 février
Ancien catalogue
....
enfin plein de trucs qui ont une structure différente.
 
Donc je suis un peu bloqué. Je me suis résigné à stocker tous les champs dans un tableau php et trier mais, ca change rien à mon problème, car j'arrive pas non plus à trier comme je voudrais.


Message édité par Koybe le 07-10-2004 à 19:41:38
n°867287
Mr Mala
Posté le 07-10-2004 à 18:32:56  profilanswer
 

Bon c'est pas génialissime mais bon ...
"select * from table order by char_length(nom),nom" ?
 
en espérant que tu n'as pas des trucs genre
"catalogue    1","catalogue 12", ...


Message édité par Mr Mala le 07-10-2004 à 18:33:42
mood
Publicité
Posté le 07-10-2004 à 18:32:56  profilanswer
 

n°867346
Koybe
Posté le 07-10-2004 à 19:40:16  profilanswer
 

// a effacer


Message édité par Koybe le 07-10-2004 à 19:41:25
n°867347
Koybe
Posté le 07-10-2004 à 19:41:11  profilanswer
 

Oups désolé, on peut effacer l'autre post? Sinon je vais essayer ton idée. Merci.

n°867524
Koybe
Posté le 07-10-2004 à 21:59:25  profilanswer
 

hehe marche pas car il y a du texte derrière

n°867527
Mr Mala
Posté le 07-10-2004 à 22:01:09  profilanswer
 

ha oui merde .. j'avais pas fait attention .. sorry ! :/

n°867782
jagstang
Pa Capona ಠ_ಠ
Posté le 08-10-2004 à 09:40:39  profilanswer
 

Mr Mala a écrit :

ha oui merde .. j'avais pas fait attention .. sorry ! :/

il l'avait surtout pas dit.  
 


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°867787
skeye
Posté le 08-10-2004 à 09:53:40  profilanswer
 

Tu dois pouvoir te démerder avec une combinaison des fonctions de manipulation de chaines de mysql pour extraire ton nombre seul...voir substring, instr, trim, lpad, locate, etc...
http://dev.mysql.com/doc/mysql/fr/ [...] tions.html


Message édité par skeye le 08-10-2004 à 09:56:02

---------------
Can't buy what I want because it's free -

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MySQL] Requete et tri

 

Sujets relatifs
[PHP - MySQL] Que donne cette requête ?[PHP - MYSQL] optimisation d'une requete
probleme de concaténation requete mysql[MySQL] Requete utilisant 2 tables, ca marche pas
[PHP] peut on inserer une fonction php dans une requete Mysql ?[MySQL] Requète un peu compliqué...
[PHP][MySQL] MySQL retourne une valeur erroné à une requète max(id)PHP MySql : revenir au début d'un résultat de requete
[MYSQL] plusieur requete pour le meme champ avec des SUM 
Plus de sujets relatifs à : [MySQL] Requete et tri


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR