Beberapa cara berbeda untuk melakukan ini:
Yang lebih cepat (dari segi kinerja) adalah:select * FROM Table where keyword LIKE '%value%'
Trik yang satu ini adalah penempatan % yang merupakan wildcard, yang mengatakan cari semua yang diakhiri atau dimulai dengan nilai ini.
Yang lebih fleksibel tetapi (sedikit) lebih lambat adalah fungsi REGEXP:
Select * FROM Table WHERE keyword REGEXP 'value'
Ini menggunakan kekuatan ekspresi reguler, jadi Anda bisa membuatnya serumit yang Anda inginkan. Namun, meninggalkan seperti di atas memberi Anda semacam "Google orang miskin", memungkinkan pencarian menjadi potongan-potongan bidang keseluruhan.
Bagian lengket masuk jika Anda mencoba mencari nama. Misalnya, baik akan menemukan nama "smith" jika Anda mencari SMI. Namun, keduanya tidak akan menemukan "Jon Smith" jika kolom nama depan dan belakang dipisahkan. Jadi, Anda harus melakukan beberapa rangkaian untuk pencarian untuk menemukan Jon OR Smith OR Jon Smith OR Smith, Jon. Ini benar-benar bisa menjadi bola salju dari sana.
Tentu saja, jika Anda melakukan semacam pencarian lanjutan, Anda harus mengkondisikan kueri Anda sesuai dengan itu. Jadi, misalnya, jika Anda ingin mencari alamat pertama, terakhir, maka kueri Anda harus menguji masing-masing:
SELECT * FROM table WHERE first LIKE '%value%' OR last LIKE '%value%' OR address LIKE '%value'