Bonjour,
Je cherche à utiliser la fonction REGEXP_LIKE pour spécifier que la valeur retournée par mon champ doit être du type NUMBER.
Version imprimable
Bonjour,
Je cherche à utiliser la fonction REGEXP_LIKE pour spécifier que la valeur retournée par mon champ doit être du type NUMBER.
Hello,
pour ton souci, je ne suis pas sûr que REGEXP_LIKE soit la bonne méthode, à moins de vouloir spécifier un format particulier de ta donnée auquel cas il faudra que tu précises ton regexp du genre :
Mais sinon, tu peux aussi créer une procédure qui te retournera si ta donnée est de type number ou non, fais une recherche sur le forum, j'ai déjà vu ça par là.Code:select myData from myTable where REGEXP_LIKE(myData,'maRegexp',monOption)
Bonjour,
Si j'ai bien compris votre besoin
Bien à vousCode:
1
2
3
4
5
6
7 -- ------------------------------------------------------------- /* ne laisser que les nombres. supprimer tout autre caractères */ -- ------------------------------------------------------------ SELECT TO_NUMBER (REGEXP_SUBSTR ('?E4252Wx/', '\d+')) tr FROM DUAL; select regexp_replace('asdf 12gmsX 435Pkts asd','[^[:digit:]]') from dual ;
Mohamed Houri
S'il n'y a pas de virgule, et qu'on souhaite vérifier uniquement des chiffres.
Code:
1
2 LTRIM(champ, '0123456789') IS NULL AND champ is not null
Merci Mohamed.Houri:ccool:
Mon pb est reglé !!!
portes toi bien