El Operador LIKE

Páginas: 9 (2190 palabras) Publicado: 4 de agosto de 2015
El operador LIKE
Este operador se aplica a datos de tipo cadena y se usa para buscar registros, es capaz de hallar coincidencias dentro de una cadena bajo un patrón dado, por ejemplo:

¿Qué empleados su primer apellido comienza por "R"?
Veamos primero la consulta SQL que responde a esto:
CÓDIGO: SELECCIONAR TODO
select *
  from EMPLEADOS
 where APELLIDOS like 'R%' 
 llevar código al banco depruebas



El interés de la anterior consulta se centra en la expresión: APELLIDOS like 'R%'

donde "like" es el operador, APELLIDOS es el operando variable que toma valores para cada registro de la tabla EMPLEADOS, y el operando constante: "R%", es un patrón de búsqueda donde el "%" representa un comodín que junto con el operador LIKE tiene el cometido de reemplazar a cualquier cadena de texto,incluso la cadena vacía, para evaluar la expresión booleana. De modo que cualquier valor que haya en el campo APELLIDOS que empiece por una "R" seguida de cualquier cosa(%) dará cierto para la expresión: APELLIDOS like 'R%'.

Veamos otro ejemplo: ¿Qué empleados su segundo apellido termina en "N"?
En este caso interesa que el campo APELLIDOS empiece por cualquier cosa y acabe con una "N", por lo tantola expresión que nos filtrará adecuadamente esto es: APELLIDOS like '%N' 
CÓDIGO: SELECCIONAR TODO
select *
  from EMPLEADOS
 where APELLIDOS like '%N' 
 llevar código al banco de pruebas




En MySQL la comparación de cadenas por defecto no es sensible a mayúsculas, de ahí que aun indicando una "N" mayúscula encuentre los apellidos acabados en "n" minúscula.


Observese como en este caso el "%"debe aparecer antes que la "N" en el patrón de búsqueda, puesto que queremos que los apellidos acaben en "N" y no que comiencen por "N".

Veamos una última aplicación de este recurso. ¿Qué devuelve esta consulta?:
CÓDIGO: SELECCIONAR TODO
select *
  from EMPLEADOS
 where APELLIDOS like '%AR%' 
 llevar código al banco de pruebas



Pues está devolviendo aquellos registros que el campo APELLIDOScontiene la cadena: "AR", ya sea al principio, al final, o en cualquier posición intermedia. De ahí que en el patrón de búsqueda encontremos la cadena "AR" acompañada de comodines a ambos lados.

Este recurso resulta muy útil para buscar coincidencias en campos sin necesidad de buscar el valor exacto. Si se nos pide buscar al empleado José Calvo, podemos limitarnos a buscar cualquier valor quecontenga la cadena "Calvo" en el campo APELLIDOS para localizar el registro.
* * *

El valor NULL
Cuando se diseña una tabla en la base de datos, una de las propiedades que se establece para los campos de la tabla es si pueden contener o no un valor nulo. Por ejemplo, supongamos que tenemos una flota de vehículos. En la tabla VEHICULOS se guardan los datos de cada unidad, datos como el modelo, queobviamente no puede ser nulo puesto que todo vehículo pertenece a un modelo, pero también por ejemplo la fecha de la última revisión obligatoria, cuyo valor sí puede ser nulo, especialmente si el vehículo es nuevo y todavía nunca se ha sometido a dicha revisión. Por tanto ya se ve que hay campos que no pueden ser nulos y otros sí, dependiendo de que información se guarda.

Para ilustrar lasparticularidades del valor NULL tomemos la tabla VEHICULOS:


En los Datos se observa como tres de las cinco unidades nunca han pasado la revisión obligatoria, puesto que el valor para el campo ULTI_ITV (última inspección técnica del vehículo) es nulo. 

El operador IS NULL
Este operador permite establecer en la cláusula WHERE de una consulta SQL condiciones para filtrar por campos de valor nulo, por ejemplo:¿Qué vehículos nunca han pasado la ITV?
CÓDIGO: SELECCIONAR TODO
select *
  from VEHICULOS
 where ULTI_ITV is null
 llevar código al banco de pruebas



Los vehículos que han pasado como mínimo una vez la ITV serán aquellos que el campo ULTI_ITV no contenga un valor nulo, para conocer estos datos debemos establecer la siguiente condición:
CÓDIGO: SELECCIONAR TODO
select *
  from VEHICULOS...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Like Me
  • LIKE
  • like
  • like
  • like
  • like
  • Like
  • Like

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS