2.1. Criterios de selección
WHERE ...
¿Qué se escribe detrás de la palabra WHERE? El diseño de consultas permite introducir varios criterios de selección de datos. En este apartado se describen los signos y expresiones de los operadores utilizados en SQL, agrupados en lógicos y de comparación.
Un operador es la expresión que permite introducir varios criterios o condiciones de búsqueda de registros.
Pueden ser lógicos o de comparación.
|
Img 11. Creación de consultas con el asistente |
Los operadores, tanto lógicos como de comparación, se usan en la creación de consultas con el asistente o en vista diseño en OOo Base. Pero el usuario no necesita conocer su sintaxis puesto que los proporciona el programa.
Recuerda que en la vista diseño a los criterios tecleados en la misma fila se les aplica el operador AND y a los tecleados en la misma columna se les aplica el operador OR. El resto se seleccionan en un cuadro de lista.
En la consulta realizada en el apartado 1 del tema se han establecido los criterios que aparecen en la imagen en los campos CiudadDestino y TipoTransporte.
Img 12. Criterios consulta
Escribe la "traducción" a SQL de dichos criterios.
Los operadores lógicos devuelven valores que cumplen las funciones lógicas AND, OR y NOT.
Se aplican escribiendo las siguientes expresiones entre dos condiciones o antes en el caso de la negación.
| AND |
Función "Y" lógica.
Evalúa dos condiciones y devuelve el valor verdadero si ambas son ciertas. |
|
|
OR
|
Función "O" lógica.
Evalúa dos condiciones y devuelve el valor verdadero si cualquiera de ella es cierta. |
|
| NOT |
Negación lógica.
Devuelve los registros con el valor contrario al de la condición. |
|
Los pedidos con destino madrid y tipo de transporte 1 y 2.
| |
|
Los pedidos con destino madrid y tipo de transporte 1 ó 2.
|
Los operadores de comparación devuelven valores que están en el rango establecido en la condición.
Los operadores son los signos >, < ó = y sus combinaciones y las expresiones BETWEEN, LIKE, IN.
| < > | menor que / menor que |
|
| = <> | igual / distinto de |
|
|
<= >=
|
menor o igual que / mayor o igual que | |
| BETWEEN | establece un intervalo de valores |
|
| LIKE | compara con un modelo |
|
|
IN
|
compara con una lista de valores |
Los operadores BETWEEN e IN admiten la negación poniendo delante NOT.
| * | son válidos un conjunto de valores cualesquiera. |
| ? |
es válido cualquier carácter. |
| # |
es válido cualquier valor numérico. |
- Pedidos realizados en el mes de enero de 2010 (del 1/01/10 al 31/01/10): 01/01/10 31/01/10
- Pedidos realizados en el último cuatrimestre del año (septiembre, octubre, noviembre y diciembre): bre
- Facturas o pedidos cobrados (cobrada o cobrado): cobrad
- Pedidos realizados en la década de los 90 (1991, 1992, ..., 1999): 199
- Pedidos enviados a provincias de Castilla-La Mancha (Ciudad Real, Albacete, Cuenca, Guadalajara, Toledo): (Ciudad Real, Albacete, Cuenca, Guadalajara, Toledo)
- Pedidos enviados al resto de provincias de España (Madrid, Cáceres, Ávila, ...): (Ciudad Real, Albacete, Cuenca, Guadalajara, Toledo)