SQL
SQL
COMPETENCIA
Resultado de aprendizaje:
Construir la base de datos, a partir del modelo de datos determinado en el
diseño del sistema, utilizando sistemas de gestión de base de datos, según los
protocolos establecidos en la organización.
Actividad contextualización
“El lenguaje más habitual para construir las consultas a bases de datos
relacionales es SQL, Structured Query Language o Lenguaje Estructurado de
Consultas, un estándar implementado por los principales motores o sistemas
de gestión de bases de datos relacionales.”
UN POCO DE HISTORIA
• Originalmente desarrollado en los '70 por IBM en su Research Laboratory de San José a
partir del cálculo de predicados creado por Codd.
• Lenguaje estándar de facto en los SGBD comerciales
• Estándares:
– SEQUEL(Structured English QUEry Language), IBM 1976
– SQL-86 (ANSI SQL)
– SQL-89 (SQL1)
– SQL-92 (SQL2), gran revisión del estándar
– SQL:1999 (SQL3), Añade disparadores, algo de OO, ...
– SQL:2003. Añade XML, secuencias y columnas autonuméricas.
CARACTERISTICAS DE SQL
La solvencia, versatilidad y consistencia de las bases de datos relacionales y
de SQL, hacen de este lenguaje uno de los más importantes útiles y
demandados para analizar datos.
Lenguaje de Lenguaje de
Manipulación Control de
de Datos Transacción.
Protección de los datos, tablas y Proporciona comandos para gestionar cada
restricción en el acceso. transacción siguiente:
COMANDOS DE SQL
COMANDOS DE SQL
COMANDOS DE SQL
COMANDOS DE SQL
CLAUSULAS ESPECIFICAS SQL
OPERADORES SQL
FUNCIONES DE AGREGADOS
Campo_x Tipo_Dato);
ORDEN DE EJECUCION DE LOS COMANDOS
DDL
1. CREATE.
CREATE DATABASE nombreBaseDatos CREATE DATABASE mibasededatos;
ORDEN DE EJECUCION DE LOS COMANDOS
DDL
2. ALTER.
• Modificación de tablas: sentencia ALTER TABLE.
– Es posible añadir, modificar y eliminar campos. Ejemplos:
• Adición del campo PAIS a la tabla CLIENTES
– ALTER TABLE CLIENTES ADD PAIS VARCHAR(10);
• Modificación del tipo del campo PAIS
– ALTER TABLE CLIENTES MODIFY PAIS VARCHAR(20);
• Eliminación del campo PAIS de la tabla CLIENTES
– ALTER TABLE CLIENTES DROP PAIS;
– También es posible añadir nuevas restricciones a la tabla (claves externas,
restricciones check).
ORDEN DE EJECUCION DE LOS COMANDOS
DDL
2. DROP.
Eliminación de tablas: sentencia DROP TABLE.
DROP TABLE CUENTAS;
-- Las tablas a las que referencia
deben haber sido eliminadas antes.
ORDEN DE EJECUCION DE LOS COMANDOS
DML
Dada una sentencia SQL de selección que incluye todas las posibles clausulas, el
orden de ejecución de las mismas es el Siguiente:
1. Clausula FROM
2. Clausula WHERE
3. Cláusula GROUP BY
4. Cláusula HAVING
5. Cláusula ORDEN BY
ORDEN DE EJECUCION DE LOS COMANDOS
Ejemplo 1
SELECT DEPTNO, DEPTNAME, ADMRDEPT
1. Clausula FROM FROM DEPARTMENT
DEPTNODEPTNAME ADMRD
SELECT A A00 SPIFFY COMPUTER SERVICE DIV. A00
FROM B B01 PLANNING A00
C01 INFORMATION CENTER A00
D01 DEVELOPMENTCENTER A00
Donde A son los datos que D11 MANUFACTURING SYSTEMS D01
requiero (columnas) y B es D21 ADMINISTRATION SYSTEMS D01
de donde obtengo esos E01 SUPPORT SERVICES A00
E11 OPERATIONS E01
datos. E21 SOFTWARE SUPPORT E01
ORDEN DE EJECUCION DE LOS COMANDOS
Ejemplo 2
SELECT nombre, apellidos, edad
1. Clausula FROM
FROM estudiantes
ORDEN DE EJECUCION DE LOS COMANDOS
Ejemplo 1
SELECT nombres, apellidos, edad
2. Clausula WHERE. FROM estudiantes
WHERE edad > 21
SELECT A
FROM B
WHERE Condicion
1.SELECT COUNT(EmployeeID), EmployeeName
3. Clausula GROUP BY. FROM EmployeeDetails
1.GROUP BY EmployeeName;
SELECT A
FROM B
GROUP BY Campos_Agrupacion