Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FACULTAD DE TECNOLOGÍA
Ingeniería de Sistemas
Capitulo Vi
LENGUAJE SQL
(Structured Query Language)
Departamento de Lenguajes y Sistemas Informáticos
Lenguaje SQL
1. Introducción
2. LMD- Operaciones de Recuperación
3. LMD – Operaciones de Actualización
4. Lenguaje de Definición de Datos
5. Lenguaje de Control de Datos
6. SQL Inmerso
Introducción
SQL (Structured Query Language)
Lenguaje de Consulta Estructurado, para bases de datos
relacionales
Es mucho más que un lenguaje de consulta puesto que
permite además funciones de definición y control de
datos
Historia
Collation
• SQL_Latin1_General_CP1_CP1_AS
Operaciones de recuperación
Sintaxis de la sentencia
SELECT [DISTINCT | ALL] { * | expresión [AS alias] [,...] }
FROM tabla [AS alias] [, ...]
[WHERE condición]
[GROUP BY lista_de_atributos ]
[HAVING condición_de_grupo ]
[ORDER BY lista_de_atributos [ASC/DESC] ];
Operaciones de consulta
Operadores
Los siguientes operadores se pueden
utilizar para expresar condiciones de fila
(cláusula WHERE) o de grupo (cláusula
HAVING):
• De comparación (<, <=, >, >=, <>, =)
• Lógicos (AND, OR, NOT)
• BETWEEN ...AND ...
• LIKE
• IN
• IS NULL, IS NOT NULL
• Cuantificadores (ANY, SOME, ALL)
• Existencial (EXISTS) (NOT EXISTS)
BD EMPRESA
Operador Like
Establece una comparación entre cadenas de
caracteres. Comodines:
%: sustituye de cero o mas caracteres (a veces
se utiliza *)
_ (subrayado): sustituye a un unico carácter (a
veces se utiliza ?)
SELECT nombreFunc
FROM Funcionario F
WHERE EXISTS (SELECT idFunc
FROM Dependiente D
19
WHERE F.idFunc=D.idFunc);
20
SELECT nombreProy
FROM Funcionario F, Trabaja T, Proyecto P
WHERE nombreFunc='Joao B. Silva’
AND F.idFunc=T.idFunc
AND T.idProy=P.idProy;
SELECT nombreProy
FROM Funcionario F JOIN Trabaja T
ON F.idFunc=T.idFunc JOIN Proyecto P
ON T.idProy=P.idProy
WHERE nombreFunc='Joao B. Silva’;
21
22
Operador IS NULL
Comprueba si un valor determinado es nulo
Un valor nulo no participa en ninguna
comparación, solo se puede comprobar si es o no
nulo
16» Litar los funcionarios que no poseen
supervisores..
SELECT *
FROM Funcionario
WHERE idSuperv IS NULL
TAMBIEN SE PUEDE UTILIZAR IS NOT NULL 24
Funciones Agregadas
25
Funciones Agregadas
26
Ejemplos:
17.» Obtener el numero total de funcionarios, el mayor,
salario, menor salario, la media de los salarios y la
suma de salarios
SELECT COUNT(*),MAX(salario),MIN(salario),AVG(salario),SUM(salario)
FROM Funcionario;
27
28
Clausula GROUP BY
GROUP BY <lista_de_atributos>
Agrupa el resultado, devolviendo una única
fila por grupo
Los atributos que aparezcan en GROUP BY,
deben aparecer en la clausula SELECT
20.» Obtener por cada departamento su id, cantidad
de funcionarios y su salario medio.
Clausula HAVING
Clausula HAVING
32
Preguntas ????