jueves, 16 de abril de 2015

Operador LIKE - SQL Server



Veamos este interesante tema, de frente al punto como dicen algunos.

Like utiliza los siguientes comodines para un determinado fin :

% Cualquier número de caracteres
_ Para un carácter individual
[ ] Para un conjunto de caracteres que esté dentro del corchete
[ ^ ] Que el carácter individual que no esté dentro del corchete

EJEMPLO: LIKE ‘%een’ Muestra todos los caracteres que acaben con een
EJEMPLO: LIKE ‘%een%’ Muestra todos los caracteres que contengan een en ese orden
EJEMPLO: LIKE ‘_en’ Muestra todos los caracteres que contenga tres letras y acaben en en
EJEMPLO: LIKE ‘[CK% ]’ Muestra todos los caracteres que empiecen por C o K
EJEMPLO: LIKE ‘[S-V]ing’ Nombre de 4 letras cuya primera letra estuviera entre S o V y acabe en ing
EJEMPLO: LIKE ‘M[^c]%’ Todos los que empiecen por M y segunda letra no sea una c. No hay limite de caracteres.

Ahora veamos todo esto en la práctica.

1. Seleccionar todos los empleados cuyo apellido comience por M

SELECT * FROM EMP WHERE APELLIDO LIKE 'M%'


2. Seleccionar todos los empleados cuyo apellido termine con la letra Z

SELECT * FROM EMP WHERE APELLIDO LIKE '%z'


3. Seleccionar todos los empleados que contengan en su apellido ER.

SELECT * FROM EMP WHERE APELLIDO LIKE '%er%'


4. Mostrar todos los empleados cuyo nombre sea de 4 letras y su apellido termine con la letra a

SELECT * FROM EMP WHERE APELLIDO LIKE '___a'


5. Mostrar todos los empleados cuyo apellido comience entre las letras E y F.

SELECT * FROM EMP WHERE APELLIDO LIKE '[E-F]%'


6. Mostrar todos los empleados cuyo apellido comience por la letra A, contenga dentro de su apellido de la letra A a la M y que terminen en O.

SELECT * FROM EMP WHERE APELLIDO LIKE 'A%[a-m]%o'


7. Mostrar todos los empleados cuyo apellido comience por la letra M y la segunda letra no sea una A.

SELECT * FROM EMP WHERE APELLIDO LIKE 'M[^A]%'


8. Mostrar todos los empleados cuyo apellido sea de 5 letras y su tercera letra sea entra la A y la S terminando en Z.

SELECT * FROM EMP WHERE APELLIDO LIKE '__[a-ñ]_z'


9. Mostrar todos los empleados cuyo apellido sea de 6 letras y no comience entre la A y la D.

SELECT * FROM EMP WHERE APELLIDO LIKE '[^a-d]_____'


10. Mostrar todos los que empiecen por la A y cuya cuarta letra no esté comprendida entre A – G

SELECT * FROM EMP WHERE APELLIDO LIKE 'A__[^a-g]%'


Espero haber ayudado en algo. Hasta la próxima oportunidad!









3 comentarios:

  1. Me ayudaste mucho. Te lo agradezco.

    ResponderEliminar
    Respuestas
    1. Hola Anónimo, muchas gracias por tu comentario. Nos alegra saber que esta información te ayudó mucho.
      Saludos!

      Eliminar
  2. con nombres que empiecen con la letra C o con la letra N

    ResponderEliminar

       
free counters

Páginas vistas en total según Google