Page 1 sur 1

[Résolu] Requête : ordre croissant pour un champ spécfique

Publié : 22 déc. 2018 11:57
par coucou
Bonjour,
La modération vous a écrit: Merci de ne pas oublier l'icône la prochaine fois

J'ai crée une requête toute simple, afin de classer mes données selon l'ordre croissant d'un champ spécifique( en l’occurrence : l'âge).

Cela fonctionne à un détail près: l'ordre croissant se fait comme suit : 10,11,12,13...2,3,4...etc
Je ne sais plus comment s'appelle cet ordre croisant particulier, mais cela ne me convient pas. IL me faudrait un ordre croissant "classique".
Que dois-je changer ?

D'avance, merci pour votre aide.

Re: Requête : ordre croissant pour un champ spécfique

Publié : 22 déc. 2018 12:10
par Piaf
Bonjour
Je ne reproduis pas.
triAge.png
Mais sans savoir comment est calculé l'âge, difficile de pouvoir t'aider.
Joins un fichier sans donnée confidentielle qui reproduise le problème.
A+

Re: Requête : ordre croissant pour un champ spécfique

Publié : 22 déc. 2018 12:20
par coucou
Voici.
C'est une base de données de jeux de société. Chaque jeu possède un âge minimum conseillé, noté par exemple 6+, pour dire "6 ans et plus".

Re: Requête : ordre croissant pour un champ spécfique

Publié : 22 déc. 2018 12:44
par Piaf
Re
Tes données âge sont en texte.
Tu peux tester cette requête

Code : Tout sélectionner

SELECT "Age_Suggere", "Titre" FROM "Jeux" ORDER BY CASEWHEN( LENGTH( "Age_Suggere" ) > 2, CAST( SUBSTR( "Age_Suggere", 1, 2 ) AS INTEGER ), CAST( SUBSTR( "Age_Suggere", 1, 1 ) AS INTEGER ) ) ASC
triAge.png
A+

Re: Requête : ordre croissant pour un champ spécfique

Publié : 22 déc. 2018 12:47
par coucou
Ah oui, c'est du texte et non des nombres ! Cela m'avais échappé , merci !

Le requête semble ainsi parfaitement fonctionner !

Grand Merci !