Repaso
English
Bases de datos y SQLIntermedioDB-02

Una tabla tiene un índice compuesto en (last_name, first_name). ¿Qué consulta puede usarlo de forma eficiente?

Opciones

  1. WHERE first_name = 'Ana'
  2. WHERE last_name = 'Ruiz' (Opción correcta)
  3. WHERE first_name LIKE '%a'
  4. Ninguna de ellas

Respuesta

WHERE last_name = 'Ruiz'

Por qué

Un índice compuesto está ordenado por la primera columna y, dentro de cada valor, por la segunda, como una guía telefónica ordenada por apellido y luego por nombre.

Puedes encontrar rápido a todos los Ruiz, o a Ruiz + Ana. Pero encontrar a todas las 'Ana' sin importar el apellido implica recorrer toda la guía.

Es la regla del prefijo izquierdo: el índice solo ayuda si filtras por sus primeras columnas.

Recuerda

El índice compuesto funciona de izquierda a derecha.

Términos clave

Practica esta pregunta en Repaso