Seperti yang telah disebutkan, Anda dapat menambahkan indeks konteks ctx ke kolom nama.
dengan asumsi sejumlah kecil catatan diperbarui, 1 opsi adalah menyegarkan indeks Anda setiap hari. (dan catat kapan itu terjadi)
lalu tambahkan kolom &indeks tanggal pembaruan terakhir ke tabel Anda yang sedang dicari.
Seharusnya dimungkinkan untuk memindai indeks ctx Anda untuk sebagian besar data lama yang tidak berubah dan memilih dari persentase kecil data yang diperbarui menggunakan LIKE tradisionale.g:
WHERE (lastupdated<lastrefresh AND contains(name,'%ABC%'))
OR (lastupdated>lastrefresh AND name like '%ABC%')
CATATAN:Anda mungkin menemukan rencana kueri Anda menjadi sedikit mental (banyak konversi bitmap ke id baris) dalam hal ini membagi 2 bagian OR menjadi kueri UNION ALL.e.g
SELECT id FROM mytable
WHERE
(lastupdate>lastrefresh and name LIKE '%ABC%')
UNION ALL
SELECT id FROM mytable
WHERE lastupdate<lastrefresh and CONTAINS(name, '%ABC%', 1) > 0