En el artículo Primeros pasos con SQL vimos la forma más básica de crear una consulta utilizando este lenguaje. Ahora vamos a restringir el ámbito de selección de registros estableciendo para ello distintas condiciones.
Esta orden es la que debemos emplear en conjunción con las anteriores para indicar qué registros nos interesa visualizar.
Utilizando nuestra ya conocida base de datos librería, vamos a escribir una consulta que muestre el Código, Título y Precio de todos los libros con un importe inferior a 25 euros, ordenados de mayor a menor.
La solución será la siguiente, y para ver el resultado pulsa Ejecutar en la cinta contextual Diseño:
SELECT codlibro, titulo, precio FROM libros WHERE precio<25 ORDER BY precio DESC;
Tras ejecutarla, el resultado que obtengas debería ser similar al que ahora puedes ver en la figura:
Debes tener en cuenta el orden en el que figuran las instrucciones ya que es fundamental mantenerlo para que no se produzcan errores. Fíjate en los distintos pasos:
Si sólo pudiéramos establecer condiciones simples, SQL no sería de mucha ayuda. Afortunadamente podemos indicar varios criterios, combinándolos en una única orden WHERE. Por ejemplo, vamos a realizar una variación de la consulta anterior, para que ahora aparezcan los libros cuyo precio se sitúe entre 10 y 30 euros.
Podríamos emplear cualquiera de estas opciones:
SELECT codlibro, titulo, precio FROM libros WHERE precio BETWEEN 10 AND 30 ORDER BY precio DESC; SELECT codlibro, titulo, precio FROM libros WHERE (precio >= 10) AND (precio <= 30) ORDER BY precio DESC;
El resultado es el mismo en ambos casos: 5 registros, pero si te fijas bien hay diferencias a la hora de escribir la instrucción. Con el criterio BETWEEN sólo se indica una vez el nombre del campo. Esto es así porque SQL lo toma como una única condición. En el segundo caso, es necesario especificar los distintos filtros de manera independiente, es decir, cada uno con su nombre de campo y su juego de paréntesis.
De momento, esto es todo; en la siguiente entrada dedicada a SQL, veremos cómo mostrar/utilizar campos situados en tablas distintas.
Acerca del autor