Domanda

C'è sarà un reale beneficio per avermi messo indici su campi data che stanno per essere utilizzato principalmente nelle query utilizzando roba come.

dateField < 'var'

E

'var' BETWEEN dateField1 AND dateField2

Le ricerche avere fatto molto, ma non sono mai facendo un confronto diretto "=" su di loro.

È stato utile?

Soluzione

Sì, naturalmente. Ricerche Gamma potranno beneficiare di un indice, così come le ricerche di uguaglianza.

MySQL Manuale di riferimento :: Come MySQL utilizza gli indici :

  

B-Tree Indice Caratteristiche

     

Un indice B-tree può essere utilizzato per il confronto delle colonne nelle espressioni che utilizzano l'=,>,> =, <, <=, o tra gli operatori. L'indice può anche essere utilizzato per il confronto Come se l'argomento di come è una costante di stringa che non inizia con un carattere jolly.

In alcune situazioni, l'ottimizzatore può decidere di non utilizzare l'indice se la gamma sarà finiscono per essere troppo grande, come una scansione di tabella potrebbe in realtà essere più veloce. Usa EXPLAIN per vedere quali (eventuali) gli indici verranno utilizzati su vostra richiesta.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top