Parcial 1-2019

PARTE 1

Restaurar la base de datos

show tables;

describe estudiante;

select * from estudiante;

A continuación:

1. Liste a los discentes que son cristianos usando el número de la numeración enum.

Select * from estudiante where Religion = 1;

2. De la consulta anterior, liste solo aquellos estudiantes que ven clase lunes y sabado.

Select * from estudiante where Religion = 1 and (dias_clase like '%lunes%' and dias_clase like '%sabado%');

3. A las directivas de la universidad les interesa saber que discentes practican ciclismo y baloncesto, que no sean cristianos, que vean clase los viernes y que no pertenezcan al programa de Especialización en seguridad (set y num)

Select * from estudiante where deporte in (4, 1) and Religion <> 1 and dias_clase = 5 and car_infom <> 4;

4. Liste a todos los estudiantes de carreras diferente a Técnico profesional que en su nombre tengan la letra l en cualquier lado, que practiquen Voleibol, de religión diferente a cristianismo y cuyo semestre tenga un valor entre $1700000 y $4300000.

select * from estudiante where car_infom <> 3 and nombre like '%l%' and deporte = 6 and religion <> 1 and valor_semes between 1700000 and 4300000;

Select * from estudiante where car_infom <> 'Tecnico profesional' and car_infom like '%l%' and deporte like '%Voleibol%' and Religion <> 'Cristianismo' and valor_semes between 1700000 and 4300000;

5. Liste el promedio del valor de semestre que cancelan los estudiantes de Ing_sistemas.

select avg(valor_semes) from estudiante where car_infom = 'Ing_sistemas';

6. Liste a los estudiantes que tienen por cualificación el ser intelectual, que vean clase los sábados y cuyo nombre termine con la letra n.

Select * from estudiante where detalles like '%intelectual%' and dias_clase like '%sabado%' and nombre like '%n';

Salir de la base de datos

exit.

copia de seguridad:

mysqldump -B -uroot -p practica1>c:/xampp/practica1.sql

En este archivo se encuentra el tee de la primera parte

PARTE 2

1. Crear objetos de base de datos

Create database Fechas;

use Fechas;

Create table Pagos (Identi varchar(4) not null primary key, descripcion varchar(50) not null, fechaadquisicion date);

2. Insertar datos

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0001', 'Chasis', '2012-09-02');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0002', 'mouse', '2013-07-29');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0003', 'teclado', '2012-06-04');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0004', 'ram', '2012-03-27');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0005', 'Memoria usb', '2012-12-06');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0006', 'ups', '2012-03-25');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0007', 'regulador voltaje', '2012-05-08');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0008', 'cableado', '2012-04-24');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0009', 'Tablet', '2012-08-10');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0010', 'Escanner', '2012-03-21');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0011', 'lapiz optico', '2012-02-12');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0012', 'Procedador pentium', '2012-06-19');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0013', 'Procesador SN', '2012-04-14');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0014', 'Unidad CD', '2012-09-17');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0015', 'hub', '2012-01-16');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0016', 'Multifuncional', '2013-04-15');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0017', 'Camara', '2013-03-18');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0018', 'Board', '2013-01-13');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0019', 'impresora laser', '2013-10-20');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0020', 'Fuente', '2013-07-11');

insert into Pagos(Identi, descripcion, fechaadquisicion) values ('0021', 'disco duro', '2013-11-22');

3. Consultas

a. Que articulos fueron adquiridos antes del 6 mes del 2012.

select * from Pagos where year(fechaadquisicion) = 2012 and month(fechaadquisicion) < 6;

b. Determinar el articulo que tiene fecha mas antigua de adquisición.

select * from Pagos where fechaadquisicion = (select max(fechaadquisicion) from pagos);

c. Seleccionar los articulos que terminan en en (o) y (m).

select * from pagos where descripcion like '%o' or descripcion like '%m';

d. Listar los productos que tienen al final consonante.

select * from pagos where descripcion not like '%a' and descripcion not like '%e' and descripcion not like '%i' and descripcion not like '%o' and descripcion not like '%u';

e. Si las fechas de adquisición es en el primer semestre del año, se daran 5 meses para el pago

select Identi, descripcion, fechaadquisicion, if(month(fechaadquisicion) <= 6, 'Dar 5 meses plazo', 'No dar plazo') As 'Plazo' from pagos;

f. Si las fechas de adquisición es en el segundo semestre del año, se daran 8 meses de plazo

select Identi, descripcion, fechaadquisicion, if(month(fechaadquisicion) > 6, 'Dar 8 meses plazo', 'No dar plazo') As 'Plazo' from pagos;

4. Copia de seguridad de la base de datos

Salir de MySQL: Exit

Backup (desde /bin):

mysqldump -B -uroot -p Fechas >C:/temp/Backup_Fechas_Parte2.sql

En este archivo esta el tee de la segunda parte

PARTE 3

1. Crear objetos de base de datos

Create database Fechas1;

use Fechas1;

Create table estudiante (carnet char(3) not null primary key, nombre varchar(50) not null, fechamatricula date not null, fechanacimiento date not null, sexo char(1) not null);

Create table materia (codigom char(3) not null primary key, descripcion varchar(50) not null, valor float not null);

Create table estmat (carnet char(3) not null, codigom char(3) not null, PRIMARY KEY (carnet, codigom), FOREIGN KEY (carnet) REFERENCES estudiante (carnet) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (codigom) REFERENCES materia (codigom) ON DELETE CASCADE ON UPDATE CASCADE);

2. Insertar datos

insert into estudiante(carnet, nombre, fechamatricula, fechanacimiento, sexo) values ('001','maria','2010-01-15','1966-05-13','f');

insert into estudiante(carnet, nombre, fechamatricula, fechanacimiento, sexo) values ('002','juana','2010-06-08','1973-01-22','f');

insert into estudiante(carnet, nombre, fechamatricula, fechanacimiento, sexo) values ('003','carlos','2010-06-28','1976-03-05','m');

insert into estudiante(carnet, nombre, fechamatricula, fechanacimiento, sexo) values ('004','Maria Parra','2010-06-11','1976-08-15','f');

insert into estudiante(carnet, nombre, fechamatricula, fechanacimiento, sexo) values ('005','Pablo Neruda','2011-02-13','1990-08-25','m');

insert into estudiante(carnet, nombre, fechamatricula, fechanacimiento, sexo) values ('006','Bladimir Palacio','2011-02-04','1994-09-03','m');

insert into estudiante(carnet, nombre, fechamatricula, fechanacimiento, sexo) values ('007','Apolonia Serrano','2011-02-28','1994-03-09','f');

insert into estudiante(carnet, nombre, fechamatricula, fechanacimiento, sexo) values ('008','Federico Serrano','2011-03-05','1991-06-10','m');

insert into materia (codigom, descripcion, valor) values ('001','software I',320000);

insert into materia (codigom, descripcion, valor) values ('002','software II',328000);

insert into materia (codigom, descripcion, valor) values ('003','software III',400000);

insert into materia (codigom, descripcion, valor) values ('004','matematicas',300000);

insert into materia (codigom, descripcion, valor) values ('005','ingles',300000);

insert into estmat (carnet, codigom) values ('001','003');

insert into estmat (carnet, codigom) values ('001','005');

insert into estmat (carnet, codigom) values ('002','002');

insert into estmat (carnet, codigom) values ('002','003');

insert into estmat (carnet, codigom) values ('002','004');

insert into estmat (carnet, codigom) values ('003','004');

insert into estmat (carnet, codigom) values ('003','001');

insert into estmat (carnet, codigom) values ('004','004');

insert into estmat (carnet, codigom) values ('004','005');

insert into estmat (carnet, codigom) values ('005','002');

insert into estmat (carnet, codigom) values ('005','005');

insert into estmat (carnet, codigom) values ('006','001');

insert into estmat (carnet, codigom) values ('006','005');

insert into estmat (carnet, codigom) values ('007','003');

insert into estmat (carnet, codigom) values ('007','004');

insert into estmat (carnet, codigom) values ('008','001');

insert into estmat (carnet, codigom) values ('008','004');

insert into estmat (carnet, codigom) values ('008','005');


3. Consultas

a. Total de estudiantes nacidos en los años 70.

select count(*) from estudiante where year(fechanacimiento) between 1970 and 1979;

b. Consultar a los estudiantes que tienen entre 16 y 20 años.

Select * From estudiante Where Year(Current_date()) - year(fechanacimiento) Between 16 and 20;

c. Consultar los nombres de los estudiantes que son mayores de 25 años.

Select nombre From estudiante Where Year(Current_date()) - year(fechanacimiento) > 25;

d. Calcular la edad de cada estudiante.

Select carnet, Nombre, Year(Current_date()) - year(fechanacimiento) 'Edad' From estudiante;

e. Consultar las materias que tienen precio mayor a 300000 y sacar un mensaje que diga si pasa de 300000 cara de lo contrario económica.

select codigom, descripcion, valor, if(valor > 300000, 'Cara', 'Economica') As 'Categoria' from materia;

f. Agregar el campo edad a la tabla estudiante, insertar las edades respectivas y si el estudiante pasa de 30 años sacar un mensaje que diga hombre mayor, de lo contrario joven en desarrollo.

ALTER TABLE estudiante ADD Edad int NULL;

update estudiante set edad = Year(Current_date()) - year(fechanacimiento);

select carnet, Nombre, edad, if(edad > 30, 'hombre mayor', 'joven en desarrollo') As 'Tipo' from estudiante;

g.Consultar las materias que tienen precio mayor a 200000 y menor igual a 300000, y sacar un mensaje que diga materia economica si esta entre 200000 y 300000 de lo contrario cara.

select codigom, descripcion, valor, if(valor > 200000 and valor <= 300000, 'Economica', if(valor > 300000, 'Cara', 'Otro')) As 'Categoria' from materia;

4. copia de seguridad de la base de datos

Salir de MySQL: Exit

Backup (desde /bin):

C:\xampp\mysql\bin>mysqldump -B -uroot -p fechas1>c:/xampp/fechas1.sql

En este archivo esta el tee de la parte 3


© 2018 Jhon Alejandro Guevara Giraldo, Ingeniero de Sistemas, Medellín-Colombia.
Creado con Webnode
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar