Trier resultats en fonction nombre se trouvant dans une chaine string

140804
,

Bonjour,

je recupere des donnees depuis ma base postgresql.
Format des donnees recuperees :

Exemple 1 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 10 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 11 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 2 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 3 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 4 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 5 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 6 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 7 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 8 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres
Exemple 9 du text aleatoire de longeur aleatoire qui peut contenuer aussi des chiffres

Le hic c'est que en filtrant sur ces donnees - exemple 10 et 11 vont se positionner avant l'exemple 2. Or je voudrai les positionner par ordre numerique en fonction du chiffre qui suit "exemple".
J'ai essaye pleins de choses, avec substring mais je coince a chaque fois - auriez vous une solution ?

Cdlt et merci d'avance :)

1 Réponse

53392
,

Salut,
select * from tatable order by substring_index(substring_index(nom_de_ton_champ,',',-2),',',1) asc;
@plus

Pierre