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