3. Más conceptos de SQL¶
3.1. Esquema de base de datos chinook¶
The Chinook data model represents a digital media store, including tables for artists, albums, media tracks, invoices, and customers.
3.2. Seleccionando diferentes tablas de las bases de datos¶
3.3. Ordenar filas¶
La cláusula ORDER BY
se utiliza para ordenar un conjunto de resultados de una consulta. SQLite almacena datos en las tablas en
un orden no especificado. Significa que las filas de la tabla pueden o no estar en el orden en que fueron insertadas. Si usa la
declaración SELECT
para consultar datos de una tabla, el orden de las filas en el conjunto de resultados no se especifica. Para
ordenar el conjunto de resultados, agregue la cláusula ORDER BY
a la declaración SELECT
de la siguiente manera:
ORDER BY column_name [ASC | DESC]
3.4. Filtrado de datos¶
Ya hemos visto algunas formas de archivar datos, por ej. Cláusula LIMIT.
En la siguiente sección, veremos algunas formas más de filtrar datos, específicamente las cláusulas WHERE, IN, BETWEEN y LIKE.
En este bloque aprenderemos a usar la cláusula WHERE
. La cláusula WHERE
es una cláusula opcional de la instrucción SELECT.
Aparece después de la cláusula FROM
como la siguiente declaración:
WHERE column_name [= | != | < | <= | > | >=] value
En este bloque aprenderemos a usar la cláusula BETWEEN
. El operador BETWEEN
es un operador lógico que comprueba
si un valor está dentro del rango de valores. Si el valor está en el rango especificado, el operador BETWEEN
devuelve
verdadero. El operador BETWEEN
se puede utilizar en la cláusula WHERE
de las instrucciones SELECT
, DELETE
, UPDATE
y REPLACE
.
La siguiente declaración muestra un ejemplo de la cláusula BETWEEN
:
BETWEEN value1 AND value2
En este bloque, aprenderemos a usar el operador IN de SQLite para determinar si un valor coincide con algún valor en una lista de valores o con el resultado de una subconsulta. El operador SQLite IN determina si un valor coincide con cualquier valor en una lista o una subconsulta. La sintaxis del operador IN es la siguiente:
IN (value1, value2, ..., valueN)
En esta parte aprenderemos sobre la cláusula LIKE. La cláusula LIKE es un operador de búsqueda que permite buscar una cadena de caracteres dentro de una cadena de caracteres. La sintaxis de la cláusula LIKE es la siguiente:
LIKE '%value%'
3.5. Agrupación de datos¶
En esta sección, aprenderemos a usar la cláusula GROUP BY
de SQLite para crear un conjunto de filas de resumen a partir de un conjunto de filas.
La cláusula GROUP BY
es una cláusula opcional de la instrucción SELECT
. La cláusula GROUP BY
un grupo seleccionado de filas en filas de resumen
por valores de una o más columnas. La cláusula GROUP BY
devuelve una fila para cada grupo. Para cada grupo, puede aplicar una función agregada como
MIN
, MAX
, SUM
, COUNT
o AVG
para proporcionar más información sobre cada grupo. La siguiente declaración ilustra la sintaxis de la cláusula
GROUP BY
de SQLite:
GROUP BY column1, column2, ...
Aquí aprenderemos a usar la cláusula HAVING
de SQLite para especificar una condición de filtro para un grupo o un agregado.
La cláusula SQLite HAVING
es una cláusula opcional de la declaración SELECT
. La cláusula HAVING
especifica una condición de
búsqueda para un grupo. A menudo usamos la cláusula HAVING
con la cláusula GROUP BY
. La cláusula GROUP BY
agrupa un conjunto
de filas en un conjunto de filas o grupos de resumen. Luego, la cláusula HAVING
filtra grupos en función de una condición
específica. Si usamos la cláusula HAVING, debemos incluir la cláusula GROUP BY
; de lo contrario, se producirá un error.
A continuación se ilustra la sintaxis de la cláusula HAVING
:
HAVING condition