Anda dapat membuat 'tampilan terwujud'.http://en.wikipedia.org/wiki/Materialized_view
pada dasarnya tabel yang merupakan hasil GABUNG, dan buat indeks teks lengkap di atasnya.
CREATE TABLE materialized (FULLTEXT idx (user_name,department_name))
SELECT u.id,user_name,department_name
FROM users u INNER JOIN departments d ON (d.id = dept_id)
Anda kemudian dapat menjalankan kueri di tabel itu sebagai gantinya..
SELECT * FROM materialized WHERE MATCH(user_name,department_name) AGAINST('test' IN BOOLEAN MODE)
tapi...
Anda perlu memperbarui tabel secara berkala (atau ketika tabel yang mendasarinya diperbarui) - paling mudah adalah dengan DROP
dan buat ulang - Atau Anda dapat menggunakan TRUNCATE
lalu INSERT INTO ... SELECT ... FROM ...
format.
(skema yang lebih rumit melibatkan pemicu untuk menjaga agar 'tampilan' tetap diperbarui, atau bahkan menonton binlog, dan memutar ulang pembaruan terhadap 'tampilan')