È un po' lungo per un commento.
Per questo tipo di ricerca, potresti prendere in considerazione un indice di testo completo. La documentazione è qui
. Questi implementano il MATCH . . . AGAINST
funzionalità.
Con tale funzionalità, puoi ordinare i risultati per pertinenza. Ciò significa che non è necessario decidere in anticipo se il connettore è "e" o "o" tra più parole. Puoi anche implementare una ricerca booleana, che consentirebbe una logica complessa più complessa, se lo desideri.