Untuk solusi yang tepat, normalkan desain database Anda atau, jika tidak, pertimbangkan pencarian teks lengkap .
Untuk solusi cepat untuk masalah yang dihadapi, gunakan kecocokan ekspresi reguler (~
)
atau tiga sederhana LIKE
ekspresi:
SELECT *
FROM subscriberfields
WHERE name ~ '(Khairpur|Islamabad|Karachi)';
Atau:
...
WHERE (name LIKE '%Khairpur%'
OR name LIKE '%Islamabad%'
OR name LIKE '%Karachi%')
Atau gunakan ~*
atau ILIKE
untuk pencocokan peka huruf besar/kecil.
Karena jawaban lain menyarankannya:tidak pernah gunakan SIMILAR TO
:
- Menggunakan SIMILAR TO untuk regex ?
- Pencocokan pola dengan LIKE, SIMILAR TO, atau ekspresi reguler di PostgreSQL