Nuestro team de trabajo ha pasado horas investigando la resolución a tus dudas, te compartimos la respuesta por esto nuestro deseo es servirte de mucha ayuda.
Solución:
LIKE
permite la coincidencia parcial / uso de comodines, mientras que =
comprueba si hay coincidencias exactas.
Por ejemplo
SELECT * FROM test WHERE field LIKE '%oom';
Devolverá filas donde el valor del campo sea cualquiera de los siguientes:
Zoom, Boom, Loom, Groom
Según el estándar SQL, la diferencia es el tratamiento de los espacios en blanco finales en las columnas CHAR. Ejemplo:
create table t1 ( c10 char(10) );
insert into t1 values ('davyjones');
select * from t1 where c10 = 'davyjones';
-- yields 1 row
select * from t1 where c10 like 'davyjones';
-- yields 0 rows
Por supuesto, suponiendo que ejecute esto en un DBMS compatible con el estándar. Por cierto, esta es una de las principales diferencias entre CHAR y VARCHAR.
En ese caso, no hay diferencia que surja en los resultados. Sin embargo, utiliza un método diferente para la comparación, y el “ME GUSTA” sería mucho más lento.
Mira esto para ver ejemplos de LIKE: http://www.techonthenet.com/sql/like.php
En este caso, todavía desea utilizar los iguales.
Actualizar: Tenga en cuenta que hay una diferencia crucial cuando se trata de columnas de tipo CHAR en las que los resultados voluntad sé diferente. Ver esta respuesta para más detalles. Cuando se usa VARCHAR (presumiblemente la norma), lo anterior es equivalente y se prefiere la igualdad.
Recuerda algo, que te brindamos la opción de añadir un enjuiciamiento verdadero si acertaste tu contratiempo justo a tiempo.