¿Cuál de las siguientes consultas es más rápido (como vs contiene)?
SELECT * FROM table WHERE Column LIKE '%test%';
o
SELECT * FROM table WHERE Contains(Column, "test");
93
|
El segundo (suponiendo que significa
CONTAINS , y de hecho lo puso en una consulta válida) debe ser más rápido, ya que puede utilizar algún tipo de índice (en este caso, un índice de texto completo).Por supuesto, esta forma de consulta sólo está disponible si la columna está en un índice de texto completo. Si no lo es, entonces sólo la primera forma está disponible.
La primera consulta, utilizando como, no será capaz de utilizar un índice, ya que comienza con un comodín, por lo que siempre requerirá un escaneo completo de tabla.
|
NO USAR INDICES DENTRO DE UNA FUNCION
WHERE TO_DAYS(fecha) - today(current_date()) >= 7
vs
where fecha >= current_date()-interval 7 day
https://www.youtube.com/watch?v=1HH4ZYXhJYE
Comentarios
Publicar un comentario