Resulta también muy útil el filtrar los registros mediante condiciones que vienen expresadas después de la cláusula WHERE.
Si quisiésemos mostrar los clientes de una determinada ciudad usaríamos una expresión como esta:
SELECT * FROM cliente WHERE cli_poblacion LIKE 'Madrid'
Podemos ordenar los resultados:
SELECT *
FROM cliente
WHERE cli_poblacion LIKE 'Madrid'
ORDER BY nombre Se pueden utilizar varios criterios de ordenamiento.
SELECT *
FROM cliente
WHERE cli_poblacion LIKE 'Madrid’
ORDER BY cli_nombre , cli_apellido
Es posible especificar orden ascendente (ASC) o descendente (DESC).
SELECT * FROM cliente WHERE ORDER BY cli_nombre desc
Una opción interesante es la de efectuar selecciones sin coincidencia. Si por ejemplo buscásemos el saber en qué ciudades se encuentran nuestros clientes sin necesidad de que para ello aparezca varias veces la misma ciudad usaríamos una sentencia de esta clase:
SELECT DISTINCT cli_poblacion
FROM cliente
ORDER BY cli_poblacion asc
Así evitaríamos ver repetido Madrid tantas veces como clientes tengamos en esa población.
Los siguientes operadores serán utilizados después de la cláusula WHERE y pueden ser combinados hábilmente para optimizar nuestra selección a muy altos niveles.
Algunos ejemplos:
Búsqueda de clientes cuya población sea parecida a “madrid” y cuyo
nombre no se parezca a “Pepe”
SELECT * FROM cliente WHERE cli_poblacion LIKE ‘madrid’ AND NOT (cli_nombre LIKE ‘Pepe‘)
Si quisiéramos recoger en una selección a los clientes de nuestra tabla cuyo apellido comienza por A y cuyo número de pedidos esta
comprendido entre 20 y 40:
SELECT * FROM cliente WHERE cli_apellidos LIKE ‘A%’ AND cli_pedidos BETWEEN 20 AND 40
Ejemplo de uso del operador IN:
SELECT *
FROM cliente
WHERE cli_poblacion IN (‘Madrid’,‘Barcelona’, ‘Valencia’)
Ejercicios
De la base de datos de bicicletas:
- Muestra el nombre del usuario con DNI 52111111A
- Muestra las ids de las bicicletas que están en el parking 1
- Muestra los dni de los usuarios cuyo nombre comienza por M
- Muestra la id y la dirección de los aparcamientos de bicicletas ordenados por capacidad máxima de bicicletas. Mostrar los resultados en orden ascendente y descendente.
- Muestra las direcciones de los aparcamientos de bicicletas que tienen capacidad entre 10 y 20 bicicletas