|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 6 ![]() |
Bonjour à tous,
j'ai dans ma table une colonne de type varchar (10) contenant des données du genre 'xyz', '#abc', 'a102', '5', '106', ... Je souhaite récupérer les lignes dont le contenu est strictement numérique. Existe-il un moyen de les avoir sans créer de procédure ? Merci d'avance pour votre aide. |
|
|
00
|
|
|
#2 | ||
![]() ![]() |
Pas vraiment.
A part une commande SQL un peu bricolage Code :
|
||
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 6 ![]() |
Bonjour,
merci Jab pour ta réponse. Voici ce que je voulais faire au départ : SELECT * FROM ma_table WHERE posstr(translate(lower(ma_colonne),'','abcdefghijklmnopqrstuvwxyz','|'), '|') = 0 ; ça marche à peu près bien sauf que ça affiche aussi les lignes quand le champ commence par '#' Du coup ce sera ça : SELECT * FROM ma_table WHERE posstr(translate(lower(ma_colonne),'','abcdefghijklmnopqrstuvwxyz#','|'), '|') = 0 ; Tu as raison, il faut être très exaustif... C'est pas très "propre" comme code mais apparemment il n'existe pas d'autre moyen. Merci encore, bonne journée ! |
|
|
00
|
|
|
#4 |
![]() ![]() |
Translate est évidemment une meilleur solution.
|
|
00
|
Copyright © 2000-2012 - www.developpez.com