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

mysql select ottimizzazione delle query e come funziona limit in mysql

L'indicizzazione regolare non può essere utilizzata per migliorare la query. Gli indici MySQL sono B-tree, il che significa che possono trovare un prefisso della colonna indicizzata molto rapidamente. Ma dal momento che il tuo LIKE la query ha % all'inizio, non c'è un prefisso univoco da cercare. Quindi ogni riga deve essere scansionata in modo che corrisponda allo schema.

Tuttavia, MySQL supporta anche la ricerca full-text. Questo crea un indice di tutte le parole nella colonna e può trovare queste parole rapidamente. Consulta la documentazione per i dettagli.

Se usi LIMIT 10 , interromperà la scansione non appena trova le prime 10 righe che soddisfano le condizioni. A meno che non utilizzi anche ORDER BY -- quindi deve trovare tutte le righe in modo da poterle ordinare prima di selezionare le prime 10.