L'exemple suivant renvoie toutes les lignes contenant au moins un chiffre numérique dans Oracle Database.
Exemple de données
Supposons que nous ayons une table appelée Products
avec les données suivantes dans son ProductName
colonne :
SELECT ProductName
FROM Products;
Résultat :
Left Handed Screwdriver Right Handed Screwdriver Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 Beer Water 10 Songs
Exemple de requête
Nous pouvons utiliser la requête suivante pour renvoyer uniquement les lignes contenant des nombres :
SELECT ProductName
FROM Products
WHERE REGEXP_LIKE(ProductName, '[0-9]+');
Résultat :
Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 10 Songs
Seules les lignes contenant des nombres sont renvoyées. Par "chiffres", j'entends des chiffres numériques. Les nombres peuvent également être représentés par des mots ou des symboles, mais cet exemple ne détecte que les chiffres numériques.
Dans Oracle, le REGEXP_LIKE
condition est conforme à la norme d'expression régulière POSIX. Par conséquent, nous pouvons obtenir le même résultat avec le modèle suivant :
SELECT ProductName
FROM Products
WHERE REGEXP_LIKE(ProductName, '[[:digit:]]');
Résultat :
Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 10 Songs