Следният пример връща всички редове, които съдържат поне една цифрова цифра в Oracle Database.
Примерни данни
Да предположим, че имаме таблица, наречена Products
със следните данни в неговия ProductName
колона:
SELECT ProductName
FROM Products;
Резултат:
Left Handed Screwdriver Right Handed Screwdriver Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 Beer Water 10 Songs
Примерна заявка
Можем да използваме следната заявка, за да върнем само онези редове, които съдържат числа:
SELECT ProductName
FROM Products
WHERE REGEXP_LIKE(ProductName, '[0-9]+');
Резултат:
Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 10 Songs
Връщат се само онези редове, които съдържат числа. Под „числа“ имам предвид цифрови цифри. Числата също могат да бъдат представени с думи или символи, но този пример открива само цифрови цифри.
В Oracle, REGEXP_LIKE
условието отговаря на стандарта за регулярни изрази POSIX. Следователно можем да получим същия резултат със следния модел:
SELECT ProductName
FROM Products
WHERE REGEXP_LIKE(ProductName, '[[:digit:]]');
Резултат:
Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 10 Songs