Mysql
 sql >> Database >  >> RDS >> Mysql

mysql - un modo per aiutare la ricerca fulltext con un altro indice?

Ok, quindi, poiché

http://dev.mysql.com/doc /refman/5.0/en/index-merge-optimization.html

Proverei questo approccio:(sostituisci author_id_index dal nome del tuo indice su author_id)

select * from articles use index (author_id_index)
where author_id=54 
and match (article_text) against ('foo');

Qui il problema è il seguente:

  • è davvero impossibile utilizzare un indice normale in combinazione con un indice full-text
  • se unisci la tabella con se stessa, stai utilizzando un indice già su ciascun lato del join (la clausola ON utilizzerà la colonna author_id, qui è sicuramente necessario l'indice)

Il più efficiente deve essere deciso da te, con alcuni casi di test, se l'utilizzo dell'indice dell'autore è migliore di quello del testo.