Gabung setelah filter (mis. gabungkan hasil), jangan coba gabung lalu filter.
Alasannya adalah Anda kehilangan penggunaan indeks teks lengkap Anda.
Klarifikasi dalam menanggapi komentar:Saya menggunakan kata gabung secara umum di sini, bukan sebagai JOIN
tetapi sebagai sinonim untuk menggabungkan atau menggabungkan.
Saya pada dasarnya mengatakan Anda harus menggunakan kueri pertama (lebih cepat), atau sesuatu seperti itu. Alasan mengapa lebih cepat adalah karena setiap subkueri cukup rapi sehingga db dapat menggunakan indeks teks lengkap tabel itu untuk melakukan pemilihan dengan sangat cepat. Bergabung dengan dua set hasil (mungkin jauh lebih kecil) (dengan UNION
) juga cepat. Ini berarti semuanya cepat.
Versi lambat akhirnya berjalan melalui banyak data yang mengujinya untuk melihat apakah itu yang Anda inginkan, daripada dengan cepat menampi data dan hanya mencari melalui baris yang mungkin benar-benar Anda inginkan.