Está en la página 1de 6

ACTIVIDAD DE CONSTRUCCIÓN APLICADA 2

CREACIÓN DE BASE DE DATOS  

ELABORADO POR 

JHON JAIRO GUAUQUE 


ANDRES FELIPE ARBOLEDA 
JAROL MAURICIO BALDOVINO 
JOSÉ ALEJANDRO CERÓN 

DOCENTE 

CAMILO AUGUSTO CARDONA PATIÑO 

CORPORACIÓN UNIFICADA NACIONAL DE

EDUCACIÓN SUPERIOR -CUN BASE DE DATOS

AVANZADA 

GRUPO 51183
 
BOGOTÁ D, C 2022
1. Construir la siguiente base de datos llamada “Farmacia” y agregar 10 registros a cada

tabla. (Note además que las llaves principales están indicadas en negrilla y se muestra la

relación con las llaves foráneas)

BASE DE DATOS FARMACIA

CREATE DATABASE `farmacia`;

CREATE TABLE `clientes` (


`iDCliente` int(11) NOT NULL,
`NombreCliente` varchar(40) DEFAULT NULL,
`ApellidoCliente` varchar(31) DEFAULT NULL,
`TelefonoCliente` int(11) DEFAULT NULL,
`EmailCliente` varchar(30) DEFAULT NULL,
`ciudad` varchar(12) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO `clientes` (`iDCliente`, `NombreCliente`, `ApellidoCliente`,


`TelefonoCliente`, `EmailCliente`, `ciudad`) VALUES
(1001, 'Pedro', 'Perez', 2111111, 'pedro@hotmail.com', 'Bogota'),
(1002, 'Jorge', 'Gonzalez', 3111111, 'jorge1@hotmail.com', 'Cali'),
(1003, 'eduardo', 'Rios', 4111111, 'alejo2@hotmail.com', 'medellin'),
(1004, 'mauricio', 'lopez', 5111111, 'maurol@hotmail.com', 'Bogota'),
(1005, 'maria', 'Garcia', 2111111, 'mariag@hotmail.com', 'Buga'),
(1006, 'jose', 'Martinez', 6111111, 'josem@hotmail.com', 'valledupar'),
(1007, 'Pedro', 'Perez', 1111111, 'Robertoro@hotmail.com', 'Bogota'),
(1008, 'Jarol', 'Baldovino', 7111111, 'jarolm@hotmail.com', 'Bogota'),
(1009, 'Ramiro', 'Duque', 8111111, 'ramiro12@gmail.com', 'cucuta'),

2
(1010, 'William', 'Sanchez', 9111111, 'williams1@hotmail.com', 'Manizales');

CREATE TABLE `medicamentos` (


`iDMedicamentos` int(11) NOT NULL,
`NombreMedicamento` varchar(40) DEFAULT NULL,
`PresentacionMedicamento` varchar(21) DEFAULT NULL,
`FechaCaducidad` date DEFAULT NULL,
`precio` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO `medicamentos` (`iDMedicamentos`, `NombreMedicamento`,


`PresentacionMedicamento`, `FechaCaducidad`, `precio`) VALUES
(101000, 'salbutamol', 'tabletas', '2022-06-21', 17000),
(101200, 'propanol', 'jarabe', '2022-07-21', 37500),
(101300, 'aspirina', 'tabletas', '2022-08-10', 8700),
(101400, 'cefadrina', 'tabletas', '2022-07-16', 47000),
(101500, 'hioshina', 'capsulas', '2023-09-21', 27500),
(101600, 'penicilina', 'tabletas', '2022-06-29', 37500),
(101700, 'loperamida', 'tabletas', '2021-07-21', 17800),
(101800, 'bronquisol', 'jarabe', '2022-08-21', 45000),
(101900, 'parlatina', 'tabletas', '2022-06-21', 70000),
(101910, 'salbutamol', 'gotas', '2022-04-11', 17000);

CREATE TABLE `ventas` (


`iDVentas` int(11) NOT NULL,
`iDMedicamentos` int(11) DEFAULT NULL,
`cantidad` int(11) DEFAULT NULL,
`precio` int(11) DEFAULT NULL,
`total` int(11) DEFAULT NULL,
`FechaVenta` date DEFAULT NULL,
`iDCliente` int(11) DEFAULT NULL,
`TipoPago` varchar(15) DEFAULT NULL

3
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO `ventas` (`iDVentas`, `iDMedicamentos`, `cantidad`, `precio`, `total`,


`FechaVenta`, `iDCliente`, `TipoPago`) VALUES
(5101, 101000, 1, 17000, 17000, '2022-01-24', 1001, 'efectivo'),
(5102, 101200, 2, 37500, 75000, '2022-01-18', 1002, 'tarjeta'),
(5103, 101800, 4, 45000, 135000, '2022-01-19', 1004, 'efectivo'),
(5104, 101300, 2, 8700, 17400, '2022-01-18', 1005, 'efectivo'),
(5105, 101400, 3, 47000, 141000, '2022-04-22', 1006, 'efectivo'),
(5106, 101500, 4, 27500, 110000, '2020-03-10', 1002, 'Efectivo'),
(5107, 101900, 3, 70000, 210000, '2021-09-07', 1007, 'Efectivo'),
(5108, 101600, 3, 37500, 112500, '2021-08-30', 1005, 'Tarjeta'),
(5109, 101400, 5, 47000, 235000, '2021-08-18', 1010, 'Tarjeta'),
(5110, 101800, 4, 47000, 188000, '2021-10-03', 1009, 'Efectivo');

ALTER TABLE `clientes`


ADD PRIMARY KEY (`iDCliente`);

ALTER TABLE `medicamentos`


ADD PRIMARY KEY (`iDMedicamentos`);
ALTER TABLE `ventas`
ADD PRIMARY KEY (`iDVentas`),
ADD KEY `iDMedicamentos` (`iDMedicamentos`), /// REACION//
ADD KEY `iDCliente` (`iDCliente`);

2. Diseñe 3 consultas empleando el patrón like y 3 consultas empleando el comando join

VIEWS Y JOIN

4
SELECT ventas.iDVentas AS "ID",medicamentos.NombreMedicamento AS "Nombre
Medicamento",ventas.precio AS "Precio",ventas.TipoPago AS "Tipo de Pago" FROM ventas

LEFT JOIN medicamentos

ON ventas.iDMedicamentos = medicamentos.iDMedicamentos

SELECT ventas.iDVentas AS "ID", clientes.NombreCliente AS "Nombre Cliente", ventas.FechaVenta


AS "Fecha Venta" FROM ventas

RIGHT JOIN clientes

ON ventas.iDCliente = clientes.iDCliente

SELECT ventas.iDVentas AS "ID", clientes.NombreCliente AS "Nombre Cliente",


medicamentos.NombreMedicamento AS "Nombre Medicamento",ventas.cantidad AS "Cantidad",
ventas.TipoPago AS "Tipo Pago" FROM ventas

INNER JOIN clientes

ON ventas.iDCliente = clientes.iDCliente

INNER JOIN medicamentos

ON ventas.iDMedicamentos = medicamentos.iDMedicamentos

CREATE VIEW Descuento AS SELECT * FROM ventas where cantidad >=4

CREATE VIEW ventascliente AS SELECT ventas.iDVentas,ventas.cantidad, clientes.NombreCliente


FROM ventas

inner join clientes

on ventas.iDCliente = clientes.iDCliente

CREATE VIEW ganador AS SELECT * FROM ventas WHERE cantidad >=5 && ventas.precio >= 25000

LIKE`S

5
SELECT * FROM medicamentos WHERE NombreMedicamentos LIKE %s%

Salbutamol tabletas

Aspirina tabletas

Hiosina capsulas

Bronquisol jarabe

Salbutamol gotas

SELECT * FROM medicamentos WHERE NombreMedicamentos LIKE s%

Salbutamol tabletas

Salbutamol gotas

SELECT * FROM medicamentos WHERE NombreMedicamentos LIKE l%

Salbutamol tabletas

Porpanol jarabe

Bronquisol jarabe

Salbutamol gotas

También podría gustarte