Introducción A SQL
Introducción A SQL
Introducción a SQL
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
SQL
Origen
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
Comandos
Juegos de caracteres
Comandos DDL
Definición de campos
Tipos de datos
Definición:
nombre_campo tipo marcadores
Tipos:
CHAR(n) Cadenas longitud fija hasta n caracteres.
VARCHAR(n) Cadenas longitud variable hasta n caracteres.
INTEGER, BIGINT, SMALLINT, . . . Enteros.. . .
REAL Número real
DATE Fechas. Están compuestas de: YEAR, MONTH y DAY.
TIME Horas. Están compuestas de HOUR, MINUTE y SECOND.
. . . y muchos más (varı́an según el SGBD).
Marcadores y restricciones
2
Disponible dependiendo del SGBD y su versión
Luis Valencia Cabrera ([email protected]) Bases de Datos
Introducción a SQL
Introducción DDL DML Select Group by Joins Otros Biblio
3
Disponible dependiendo del SGBD y su versión
Luis Valencia Cabrera ([email protected]) Bases de Datos
Introducción a SQL
Introducción DDL DML Select Group by Joins Otros Biblio
Comandos ALTER
4
Más información en esta web.
Luis Valencia Cabrera ([email protected]) Bases de Datos
Introducción a SQL
Introducción DDL DML Select Group by Joins Otros Biblio
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
Comandos DML
Modificadores
Operadores lógicos
Operadores de comparación
Funciones de agregado
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
Consultas de Selección
Consultas de Selección
Consultas de Selección
Consultas de Selección
Ejemplos
Alias (AS)
Operadores lógicos
SELECT *
FROM Empleados
WHERE (Sueldo > 100 AND Sueldo < 500) OR
(Provincia='Madrid' AND Estado='Casado');
Operador BETWEEN:
SELECT *
FROM Pedidos
WHERE CodPostal BETWEEN 28000 AND 28999;
Combinado con NOT:
SELECT *
FROM Pedidos
WHERE cp NOT BETWEEN 28000 AND 28999;
Luis Valencia Cabrera ([email protected]) Bases de Datos
Introducción a SQL
Introducción DDL DML Select Group by Joins Otros Biblio
Operador LIKE
Operador IN
Cuantificador EXISTS
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
Agrupamiento - GROUP BY
GROUP BY lista campos
combina los registros con valores idénticos para lista campos en un
grupo, para el que se mostrará un único registro. Si se incluye una
función SQL agregada (Sum, Count...) en el SELECT, se obtiene
un valor del cálculo para cada registro (grupo). Su sintaxis es:
SELECT expresiones
FROM tabla
[WHERE lista criterios]
GROUP BY lista campos;
Por ejemplo:
SELECT Id_Familia, Sum(Stock)
FROM Productos
GROUP BY Id_Familia;
Agrupamiento - HAVING
Una vez GROUP BY ha combinado los
registros, HAVING filtra los registros
agrupados que satisfagan las
condiciones del HAVING.
Es similar a WHERE, determina qué
registros se seleccionan. Pero a
diferencia de éste (que afecta a los SELECT Id_Familia, SUM(Stock)
registros originales), HAVING filtra los FROM Productos
registros resultantes de la agrupación, WHERE NombreProducto Like 'BOS%'
según los resultados de los campos GROUP BY Id_Familia
calculados. HAVING SUM(Stock) > 100
Es decir, una vez se han agrupado los
registros utilizando GROUP BY y se han
hecho los cálculos agregados, HAVING
determina cuáles de los nuevos
registros se van a mostrar.
Agrupamiento - AVG
Agrupamiento - Count
COUNT
Algunos ejemplos adicionales
Agrupamiento - Sum
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
Producto cartesiano
Joins
Joins
Joins
Reflexividad
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
Subconsultas
ANY
Formato general:
Operador ANY Subconsulta
ANY se usa con un operador de comparación, y el resultado de la
misma se evalúa como Verdadero si la comparación resulta cierta
para algún valor devuelto por la subconsulta.
Por ejemplo:
SELECT s1
FROM t1
WHERE s1 > ANY (SELECT s1 FROM t2);
COALESCE
SELECT Nombre,
COALESCE(FijoCasa, FijoTrabajo, Móvil) Telefono
FROM Clientes;
Índice
1 Introducción
2 Data Definition Language
3 Data Manipulation Language
4 Select
5 Group by
6 Joins
7 Otros
8 Bibliografı́a
Bibliografı́a I
Mercedes Marqués
Apuntes de Bases de Datos.
Universidad Jaume I en Castellón (2011)
ISBN: 978-84-693-0146-3
Bibliografı́a II
Bibliografı́a III