Contoh berikut hanya mengembalikan baris yang tidak berisi digit numerik apa pun dalam kolom tertentu di Oracle Database.
Contoh Data
Misalkan kita memiliki tabel dengan data berikut:
SELECT ProductName
FROM Products;
Hasil:
Left Handed Screwdriver Right Handed Screwdriver Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 Beer Water 10 Songs
Tabel ProductName menggunakan varchar2
tipe data, dan karena itu berisi data karakter. Tapi itu juga bisa berisi angka numerik.
Contoh 1 – Ekspresi Reguler
Berikut kueri yang dapat kita gunakan untuk mengembalikan semua baris yang tidak berisi angka numerik:
SELECT ProductName
FROM Products
WHERE NOT REGEXP_LIKE(ProductName, '[0-9]+');
Hasil:
Left Handed Screwdriver Right Handed Screwdriver Beer Water
Contoh 2 – POSIX
Di Oracle Database, REGEXP_LIKE
kondisi sesuai dengan standar ekspresi reguler POSIX. Oleh karena itu, kita bisa mendapatkan hasil yang sama dengan query berikut:
SELECT ProductName
FROM Products
WHERE NOT REGEXP_LIKE(ProductName, '[[:digit:]]');
Hasil:
Left Handed Screwdriver Right Handed Screwdriver Beer Water