La estructura básica común para todas las interrogaciones de datos es la siguiente:
SELECT columna_1, columna_2,...
FROM Tabla_1, Tabla_2,...
WHERE condiciones_de_búsqueda
GROUP BY expresion
ORDER BY expresion ASC/DESC
Por ejemplo, en la tabla de la lección anterior, si queremos obtener la lista ordenada alfabéticamente de todas las personas de la agenda que tienen 30 años:
SELECT Nombre
FROM Agenda
WHERE Edad=30
ORDER BY Nombre ASC
La consulta de selcción tiene mucha potencia, empleando los operadores adecuados. Así, es posible concatenar condiciones mediante los operadores booleanos AND, OR, NOT, NOR, XOR, etc.
SELECT Nombre, Direccion
FROM Agenda
WHERE Edad=30 AND Nombre LIKE 'Pepe'
Obtendrá como resultado todos aquellos cuyo nombre es Pepe y tienen 30 años. Cuando se encadenan distintas condiciones mediante operadores booleanos es necesario recordar el orden en el que estos se evaluan. Así la condición
WHERE Edad=30 AND Nombre LIKE 'Pepe' OR Direccion LIKE 'Plaza Mayor 26'
Produce un resultado distinto que
WHERE Edad=30 OR Direccion LIKE 'Plaza Mayor 26' AND Nombre LIKE 'Pepe'
Para evitar Estos problemas, conviene forzar la intrepretación mediante paréntesis. Así:
WHERE Edad=30 AND (Nombre LIKE 'Pepe' OR Direccion LIKE 'Plaza Mayor 26')
De esta forma se fuerza el cumplimiento de la expresión condicional, evaluándose primero la expresión que está entre paréntesis, y posteriormente la parte de la conjunción.
Además, es posible efectuar búsquedas de cadenas de caracteres empleando comodines. Para ello hay que olvidarse de las convenciones introducidas años atrás por el MS-DOS, y adaptarse a las propias de SQL. Estas son:
comodín | significado | equivalente en MS-DOS |
% | Cualquier número de caracteres | * |
_ | Un único caracter | ? |
[] | Cualquiera de los caracteres enumerados entre los corchetes |
Así la consulta formulada como:
SELECT Nombre, Direccion
FROM Agenda
WHERE Nombre LIKE 'Pe%'
Producirá como resultado a Pepe, pero también a Penélope, a Pedro, a Petra, etc.
La instrucción ORDER BY sirve para producir un resultado ordenado, de forma ascendente o descendente (ASC o DESC), por una determinada columna.
| Volver al Índice | Saber más |
Utilice las flechas para desplazarse a la pantalla anterior o posterior