Modelado físico relacional de bases de datos
Introducción a DQL
El Lenguaje de Consulta de Datos (DQL) se usa para extraer información de una base de datos. Su comando principal es SELECT, que permite consultar y mostrar datos de una o varias tablas.
Comando SELECT
Sintaxis básica de SELECT:
1SELECT columnas 2FROM tabla;
Ejemplo:
1SELECT nombre, edad 2FROM estudiantes;
Este comando selecciona y muestra las columnas nombre y edad de la tabla estudiantes.
Uso de WHERE (Filtrar resultados):
1SELECT nombre, edad 2FROM estudiantes 3WHERE edad > 18;
Este comando muestra los nombres y edades de los estudiantes mayores de 18 años.
Los operadores de comparación más comunes son:
=: Igual a.!=o<>: Diferente de.>,<: Mayor o menor que.>=,<=: Mayor o igual a, menor o igual a.BETWEEN: Entre dos valores. (lo veremos más adelante)LIKE: Coincide con un patrón. (lo veremos más adelante)IN: Coincide con uno de varios valores. (lo veremos más adelante)AND,OR,NOT: Operadores lógicos. (lo veremos más adelante)IS NULL,IS NOT NULL: Verificar si un valor es nulo o no nulo. (lo veremos más adelante)EXISTS: Verificar si existe un subconjunto de resultados. (lo veremos más adelante)ANY,ALL: Comparar un valor con cualquier valor o con todos los valores de un conjunto. (lo veremos más adelante)
Uso de ORDER BY (Ordenar resultados):
1SELECT nombre, edad 2FROM estudiantes 3ORDER BY edad DESC;
Este comando muestra los nombres y edades de los estudiantes ordenados de mayor a menor edad.
Las opciones de ordenamiento son:
ASC: Orden ascendente (por defecto).DESC: Orden descendente.
Uso de GROUP BY (Agrupar resultados):
1SELECT clase, COUNT(*) 2FROM estudiantes 3GROUP BY clase;
Este comando cuenta cuántos estudiantes hay en cada clase.
Uso de HAVING (Filtrar grupos):
1SELECT clase, COUNT(*) 2FROM estudiantes 3GROUP BY clase 4HAVING COUNT(*) > 5;
Este comando muestra solo las clases que tienen más de 5 estudiantes.
Uso de Funciones de Agregación:
COUNT: Cuenta el número de filas.SUM: Suma los valores de una columna.AVG: Calcula el promedio de una columna.MIN: Encuentra el valor mínimo.MAX: Encuentra el valor máximo.
Ejemplo con AVG:
1SELECT AVG(edad) 2FROM estudiantes;
Este comando calcula la edad promedio de todos los estudiantes.
Uso de JOIN (Unir tablas):
1SELECT estudiantes.nombre, cursos.nombre 2FROM estudiantes 3JOIN cursos ON estudiantes.curso_id = cursos.id;
Este comando muestra el nombre de los estudiantes junto con el nombre de los cursos en los que están inscritos.
** Alias AS**
En SQL, un alias es un nombre temporal que se asigna a una tabla o columna dentro de una consulta para hacerla más fácil de leer y escribir. Los alias son especialmente útiles cuando se trabajan con tablas con nombres largos, cuando se realizan uniones entre varias tablas, o cuando se necesitan nombres alternativos para las columnas resultantes.
Alias para columnas
Cuando utilizas un alias para una columna, puedes darle un nombre más sencillo o comprensible a la columna en el resultado de la consulta.
Sintaxis:
1SELECT columna AS alias 2FROM tabla;
Ejemplo de alias para columna:
Supongamos que tienes una tabla llamada estudiantes y una columna llamada nombre_completo, pero quieres que el resultado de la consulta muestre el alias nombre para esa columna:
1SELECT nombre_completo AS nombre 2FROM estudiantes;
Esto mostrará la columna nombre_completo con el título nombre en el resultado, aunque en la base de datos la columna siga llamándose nombre_completo.
Alias para tablas
Un alias para una tabla es útil cuando se hace una consulta con varias tablas, y especialmente cuando hay uniones entre ellas. En vez de escribir el nombre completo de la tabla, puedes usar un alias corto.
Sintaxis:
1SELECT t.columna 2FROM tabla AS t;
Ejemplo de alias para tabla:
Supongamos que tienes dos tablas, estudiantes y cursos, y quieres unirlas. Puedes asignar un alias corto a cada tabla para hacer la consulta más fácil de leer:
1SELECT e.nombre, c.nombre_curso 2FROM estudiantes AS e 3JOIN cursos AS c ON e.curso_id = c.id;
Aquí, e es un alias para la tabla estudiantes y c es un alias para la tabla cursos. Usar estos alias en lugar de escribir los nombres completos de las tablas hace que la consulta sea más compacta y fácil de leer.
Alias sin la palabra clave AS
En SQL, también puedes usar un alias sin la palabra clave AS, aunque su uso no es obligatorio:
1SELECT nombre_completo nombre 2FROM estudiantes;
Es equivalente al ejemplo anterior, solo que omites la palabra AS.
2.3. Práctica
- Escribir un
SELECTque muestre todos los datos de una tabla. - Filtrar resultados usando
WHERE. - Ordenar los resultados con
ORDER BY. - Agrupar datos usando
GROUP BYy filtrar grupos conHAVING. - Usar funciones de agregación en consultas.
- Loading...