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!
Twittear
Me ayudaste mucho. Te lo agradezco.
ResponderEliminarHola Anónimo, muchas gracias por tu comentario. Nos alegra saber que esta información te ayudó mucho.
EliminarSaludos!
con nombres que empiecen con la letra C o con la letra N
ResponderEliminarHola Jhan Luck Noe Pezo, gracias por la visita y el aporte de tu consulta.
Eliminarquiero que me muestre el cuarto carácter me salgue una letra como podría realizarlo ayudaaaaaaa.
ResponderEliminarHola Anónimo, gracias por la visita y el aporte de tu consulta.
Eliminar¿Cómo puedo hacer para que muestre, -de una base de apellidos, aquéllos que tienen 2 consonantes juntas?
ResponderEliminarHola Anónimo, gracias por la visita y el aporte de tu conuslta. Esperemos que algún visitante pueda apoyarte con la solución.
Eliminar