Iti merge greu pentru ca queryul ala al tau nu are nici o sansa sa mearga fara sa treaca prin toata baza de date.
In primul rand trebuie sa faci o tabela de cuvinte apoi un reverse index.

Adica:


Cod:
+++++++++++++++
+ ID + Cuvant      +
+++++++++++++++
+ 1 +  TAPSI        +
+ 2 +  CEL           +
+ 3 +  MAI           +
+ 4 +  MIC           +
+ 5 +  URECHEAT  +
....

si


+++++++++++++++++++++++++++++++
+ id + cuvant_id   + film_id  +  camp_ID+
++++++++++++++++++++++++++++++
+ 1 +  1              + 26       +  2         +
+ 2 +  2              + 26       +  2         +
+ 3 +  1              + 26       +  3         +
+ 4 +  2              + 26       +  3         +
......



unde camp_id e campul unde se gaseste cuvantul in inregistrarea din film

Apoi cautarea o faci pe cuvintele din reverse index (cautare exacta, fara LIKE) care te duce direct la id-ul de film si campul din care face parte.

Fara reverse index, la ce vrei tu sa faci acolo, orice optimizare ai face tot o sa faca full table scan.