Está en la página 1de 7

ACTIVIDAD PROPUESTA

ALUMNA: FATIMA KRYSTEL ALIAGA GARCIA

1. Mostrar todos los registros de la tabla productos; así como el nombre de categoría.

SELECT P.*, C.NOMBRE AS NOMBRE_CATEGORIA

FROM PRODUCTO P

INNER JOIN CATEGORIAS C ON P.COD_CATE = C.COD_CATE;

GO
2. Mostrar los campos codigo del empleado, nombres, apellidos, sueldo básico, fecha de
ingreso; así como el nombre del cargo y nombre del distrito. Utilice Alias para las tablas y
cambie el encabezado de las columnas.
SELECT

E.COD_EMPLE AS [Código empleado],

E.NOMBRES AS Nombres,

E.APELLIDOS AS Apellidos,

E.SUELDO_BASICO AS [Sueldo básico],

E.FECHA_INGRESO AS [Fecha de ingreso],

C.NOMBRE_CARGO AS [Nombre del cargo],

D.NOMBRE_DISTRITO AS [Nombre del distrito]

FROM

EMPLEADO E

JOIN CARGOS C ON E.COD_CARGO = C.COD_CARGO

JOIN DISTRITOS D ON E.ID_DISTRITO = D.ID_DISTRITO;

GO
3. Mostrar los campos num_boleta de la tabla detalle boleta, descripción del producto,
precio_venta, cantidad de detalle boleta, importe de la tabla detalle boleta; pero sólo
aquellos registros cuya cantidad se encuentre entre 5 y 25.}

SELECT DB.NUM_BOLETA, P.DESCRIPCION, P.PRECIO_VENTA, DB.CANTIDAD, DB.IMPORTE

FROM DETALLEBOLETA DB

JOIN PRODUCTO P ON DB.ID_PRODUCTO = P.ID_PRODUCTO

WHERE DB.CANTIDAD BETWEEN 5 AND 25;

GO
4. Mostrar los campos num_boleta, Nombre del cliente, Apellidos, el día, el mes y el año en
que se realizó la venta por separado, de aquellos registros donde el año es mayor a 2010.
Ordénalos de forma ascendente por codigo de cliente. Utilizar Alias y Sentencias Day,
Month y Year.
SELECT

B.NUM_BOLETA,

C.NOMBRES AS 'Nombre del cliente',

C.APELLIDOS,

DAY(B.FECHA_EMI) AS 'Día',

MONTH(B.FECHA_EMI) AS 'Mes',

YEAR(B.FECHA_EMI) AS 'Año'

FROM

BOLETA B

INNER JOIN CLIENTE C ON B.ID_CLIENTE = C.ID_CLIENTE

WHERE

YEAR(B.FECHA_EMI) > 2010

ORDER BY

C.ID_CLIENTE ASC;

GO
5. Mostrar todos los campos de la tabla cliente a excepción de los clientes del distrito de
Cercado y Los Olivos y que hayan comprado productos cuya descripción comienza con la
letra A cantidad>=2. Utilizar alias, operadores de comparación y operador lógico NOT.

SELECT
C.ID_CLIENTE AS [ID Cliente],
C.NOMBRES AS [Nombre cliente],
C.APELLIDOS AS [Apellidos cliente],
C.DIRECCION AS [Direccion cliente],
C.FONO AS Telefono,
C.ID_DISTRITO AS [ID Distrito],
C.EMAIL AS Email
FROM CLIENTE C
WHERE C.ID_DISTRITO NOT IN ('D003', 'D005')
AND C.ID_CLIENTE IN (
SELECT C.ID_CLIENTE
FROM CLIENTE C
INNER JOIN BOLETA B ON C.ID_CLIENTE = B.ID_CLIENTE
INNER JOIN DETALLEBOLETA DB ON B.NUM_BOLETA = DB.NUM_BOLETA
INNER JOIN PRODUCTO P ON DB.ID_PRODUCTO = P.ID_PRODUCTO
WHERE P.DESCRIPCION LIKE 'A%'
AND DB.CANTIDAD >= 2
);
GO
6. Visualizar el nombre del cliente, apellidos, número de boleta, descripción del producto
comprados, cantidad y fecha de emisión de todos aquellos clientes cuya segunda letra de
apellidos sea A.

SELECT CLI.NOMBRES AS NombreCliente, CLI.APELLIDOS AS ApellidosCliente, B.NUM_BOLETA AS


NumeroBoleta, P.DESCRIPCION AS DescripcionProducto, DB.CANTIDAD AS Cantidad, B.FECHA_EMI AS
FechaEmision
FROM CLIENTE CLI
JOIN BOLETA B ON CLI.ID_CLIENTE = B.ID_CLIENTE
JOIN DETALLEBOLETA DB ON B.NUM_BOLETA = DB.NUM_BOLETA
JOIN PRODUCTO P ON DB.ID_PRODUCTO = P.ID_PRODUCTO
WHERE SUBSTRING(CLI.APELLIDOS, 2, 1) = 'A'
GO

7. Realice 04 Subconsultas de acuerdo a su criterio

-- SUBCONSULTA 1

SELECT E.NOMBRES, E.APELLIDOS


FROM EMPLEADO E
INNER JOIN DISTRITOS D ON E.ID_DISTRITO = D.ID_DISTRITO
WHERE E.NIVEL_EDUCA = 'Universitario' AND D.NOMBRE_DISTRITO = 'Lince';
GO

-- SUBCONSULTA 2
SELECT E.NOMBRES, E.SUELDO_BASICO
FROM EMPLEADO E
INNER JOIN CARGOS C ON E.COD_CARGO = C.COD_CARGO
WHERE C.NOMBRE_CARGO = 'Vendedor(a)';
GO
-- SUBCONSULTA 3
SELECT DESCRIPCION
FROM PRODUCTO
WHERE PRECIO_VENTA > 100;
GO

-- SUBCONSULTA 4
SELECT NOMBRES, APELLIDOS
FROM EMPLEADO
WHERE SUELDO_BASICO > 2000;
GO

También podría gustarte