Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/08/2011, 16h13   #1
Invité de passage
 
Homme
Administrateur de base de données
Inscription : juillet 2011
Messages : 27
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Côte d'Ivoire

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : juillet 2011
Messages : 27
Points : 4
Points : 4
Par défaut Comment utiliser REGEX_LIKE

Bonjour,

Je cherche à utiliser la fonction REGEXP_LIKE pour spécifier que la valeur retournée par mon champ doit être du type NUMBER.
lyl2011 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 16h38   #2
Membre habitué
 
Homme
Développeur Web
Inscription : avril 2007
Messages : 323
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 23
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2007
Messages : 323
Points : 144
Points : 144
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 :
Code :
SELECT myData FROM myTable WHERE REGEXP_LIKE(myData,'maRegexp',monOption)
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à.
__________________
L'intelligence c'est comme la confiture, moins tu en as , plus tu l'étales...
erox44 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 16h47   #3
Membre expérimenté
 
Homme Mohamed Houri
Inscription : mars 2010
Messages : 286
Détails du profil
Informations personnelles :
Nom : Homme Mohamed Houri
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 286
Points : 563
Points : 563
Citation:
Envoyé par lyl2011 Voir le message
Bonjour,

Je cheche à utilser la fct REGEXP_LIKE pour specifier que la valeur retournée par mon champ doit être du type NUMBER.

HELP PLEASE!!!
Bonjour,

Si j'ai bien compris votre besoin
Code :
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 ;
Bien à vous

Mohamed Houri
Mohamed.Houri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 17h41   #4
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 437
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 437
Points : 4 173
Points : 4 173
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
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 17h46   #5
Invité de passage
 
Homme
Administrateur de base de données
Inscription : juillet 2011
Messages : 27
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Côte d'Ivoire

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : juillet 2011
Messages : 27
Points : 4
Points : 4
Merci Mohamed.Houri
Mon pb est reglé !!!

portes toi bien
lyl2011 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 17h48   #6
Invité de passage
 
Homme
Administrateur de base de données
Inscription : juillet 2011
Messages : 27
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Côte d'Ivoire

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : juillet 2011
Messages : 27
Points : 4
Points : 4
Citation:
Envoyé par McM Voir le message
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

parfait ça me va aussi
merci
lyl2011 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h01.


 
 
 
 
Partenaires

Hébergement Web