La diferencia de rendimiento probablemente sea minúscula en este caso particular, ya que mysql usa un índice en "US.%"
. La degradación del rendimiento se siente principalmente cuando se busca algo como "%.US"
(el comodín está al frente). Como lo hace un tablescan sin usar índices.
EDITAR: se puede ver en ello como esto:
MySql internamente tiendas varchar
índices como los árboles con primer símbolo siendo la raíz y la ramificación a cada letra siguiente.
Por lo tanto, al buscar = "US"
busca , luego baja un paso para S
y luego otro para asegurarse de que ese es el final del valor. Eso es tres pasos.
Buscando LIKE "US.%"
se ve de nuevo por U
, entonces S
, entonces .
y luego se detiene la búsqueda y muestra los resultados - que también está a sólo tres pasos, ya que no le importa si el valor termina allí.
EDIT2: No estoy de ninguna manera promoviendo la desnormalización de la base de datos, solo quería llamar su atención que este asunto puede no ser tan directo como parece a primera vista.
Tiene 2 filas llamadas 'País'. –
@Rocket: ¿te refieres a las columnas? –
Sí, soy disléxico, lo siento. –