Documentos de Académico
Documentos de Profesional
Documentos de Cultura
modelamiento de bases de
datos y consultas con SQL
Módulo 4
En este documento se encontrarán las consultas realizadas en la clase del módulo 4 y otros
ejemplos que complementan y/o detallan la información entregada.
USE Empresa;
-- Revisión de los datos de las tablas
SELECT * FROM Cargo;
SELECT * FROM Cliente;
SELECT * FROM Comuna;
SELECT * FROM Empleado;
SELECT * FROM Producto;
SELECT * FROM ProductoCliente;
-- Otro método
SELECT *
FROM Empleado
WHERE Emp_Sueldo >= 200000 AND Emp_Sueldo <= 600000;
/* Los textos se pueden comparar de una forma más específica con el uso de LIKE
y luego expresando la manera en la que se hará la comparación: */
/* LIKE
'A%‘ comienza con
'%A‘ termina con
'%A%‘ contiene
'_A%‘ segundo caracter a
'%A_‘ penúltimo caracter a
'__A%‘ tercer caracter a
'_A_E%‘ segundo caracter a y cuarto caracter e */
-- Todos los empleados que su apellido comience con P y su nombre comience con
M
-- Versión Optimizada
SELECT *
FROM Comuna
WHERE Com_Nombre LIKE 'San %' OR Com_Nombre LIKE 'Sant_ %';
-- También se puede negar algunas instrucciones para realizar una búsqueda por
descarte
SELECT *
FROM Comuna
WHERE Com_Nombre LIKE 'San%' AND Com_Nombre NOT LIKE 'Santiago%';
-- Todos los empleados que su rut comience con uno y su cargo sea 3
SELECT *
FROM Empleado
WHERE Emp_Rut LIKE '1%' AND Emp_ID_Cargo = 3;
-- Todos los empleados que su apellido tenga como segunda letra una o
SELECT *
FROM Empleado
WHERE Emp_Apellido LIKE '_o%';
/*IN se utiliza para generar un "filtro" de datos totalmente conocidos por uno mismo
Acá filtramos a todos los cargos que requieren estudios para realizarse */
SELECT *
FROM Empleado
WHERE Emp_ID_Cargo IN(1, 4, 5);
-- Empleados de cargo tipo 4 ordenados Asc por nombre y por apellido Desc
SELECT *
FROM Empleado
WHERE Emp_ID_Cargo = 4
ORDER BY Emp_Nombre ASC, Emp_Apellido DESC;
-- Seleccionar el nombre y el apellido del cliente, Alias para la tabla donde la comuna
sea 4
SELECT C.Cli_Nombre, C.Cli_Apellido
-- Seleccionar el nombre y el apellido del cliente, Alias para la tabla donde la comuna
sea 4 y alias para los campos
SELECT C.Cli_Nombre AS Nombre, C.Cli_Apellido AS Apellido
FROM Cliente AS C
WHERE C.Cli_ID_Comuna = 4;
-- Seleccionar el registro que tiene el máximo saldo pero sólo rut y saldo
SELECT Pcl_Cli_Rut AS Run_Cliente, Pcl_Saldo AS Venta_Maxima
FROM ProductoCliente
ORDER BY Pcl_Cli_Rut DESC
LIMIT 1;