Pregunta

¿Hay va a ser ningún beneficio real para mí poner índices a los campos de fecha que se van a utilizar principalmente en consultas usando cosas por el estilo.

dateField < 'var'

y

'var' BETWEEN dateField1 AND dateField2

Las búsquedas conseguir hecho mucho, pero nunca estoy haciendo una comparación directa "=" en ellos.

¿Fue útil?

Solución

Sí, por supuesto. búsquedas por rango se beneficiarán de un índice, tanto como las búsquedas de igualdad.

MySQL Manual de referencia :: ¿Cómo utiliza MySQL los índices :

  

Características árbol B Índice

     

Un índice de árbol B se puede utilizar para las comparaciones de las columnas en las expresiones que utilizan el =,>,> =, <, <=, o entre operadores. El índice también se puede utilizar para comparaciones como si el argumento de LIKE es una cadena constante que no se inicia con un carácter comodín.

En algunas situaciones, el optimizador puede decidir no utilizar el índice si el rango va a terminar siendo demasiado grande, como un recorrido de tabla en realidad podría ser más rápido. Uso EXPLAIN para ver cuál (si los hay) los índices se utilizará en su consulta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top