Contoh berikut mengembalikan semua baris yang berisi setidaknya satu digit numerik di PostgreSQL.
Contoh
Misalkan kita memiliki tabel bernama Products
dengan data berikut di ProductName
its kolom:
SELECT ProductName
FROM Products;
Hasil:
productname --------------------------------- Left handed screwdriver Right handed screwdriver Long Weight (blue) Long Weight (green) Straw Dog Box Bottomless Coffee Mugs (4 Pack) Smash 2000 Sledge Hammer Chainsaw (3 spare fingers)
Kolom ini berisi data karakter, tetapi beberapa baris berisi angka di dalam data karakter tersebut (meskipun tidak disimpan sebagai tipe numerik).
Kita dapat menggunakan kueri berikut untuk mengembalikan hanya baris yang berisi angka yang diwakili oleh angka numerik:
SELECT ProductName
FROM Products
WHERE ProductName ~ '[0-9]+';
Hasil:
productname --------------------------------- Bottomless Coffee Mugs (4 Pack) Smash 2000 Sledge Hammer Chainsaw (3 spare fingers)
Seperti yang diharapkan, hanya baris yang berisi angka yang dikembalikan.
Di PostgreSQL, ~
adalah operator case-sensitive untuk mencocokkan ekspresi reguler yang diberikan. Untuk kecocokan yang tidak peka huruf besar/kecil, gunakan ~*
.
Anda dapat menggunakan !~
untuk mengembalikan semua baris yang tidak cocok dengan ekspresi reguler (dan !~*
untuk kecocokan yang tidak peka huruf besar/kecil).