Problema:
Trabajamos con la tabla "empleados" de una empresa.
1- Elimine la tabla empleados, si existe.
2- Cree la tabla con la siguiente estructura:
create table empleados(
documento char(8),
nombre varchar(30),
sexo char(1),
estadocivil enum('soltero','casado','divorciado','viudo') not null,
sueldobasico decimal(6,2),
primary key(documento)
);
3- Ingrese algunos registros:
insert into empleados (documento,nombre,sexo,estadocivil,sueldobasico)
values ('22333444','Juan Lopez','m','soltero',300);
insert into empleados (documento,nombre,sexo,estadocivil,sueldobasico)
values ('23333444','Ana Acosta','f','viudo',400);
4- Intente ingresar un valor "null" para el campo enumerado:
insert into empleados (documento,nombre,sexo,estadocivil,sueldobasico)
values ('25333444','Ana Acosta','f',null,400);
5- Ingrese resgistros con valores de índice para el campo "estadocivil":
insert into empleados (documento,nombre,sexo,estadocivil,sueldobasico)
values ('26333444','Luis Perez','m',1,400);
insert into empleados (documento,nombre,sexo,estadocivil,sueldobasico)
values ('26336444','Marcelo Torres','m',3,460);
6- Ingrese un valor inválido, uno no presente en la lista y un valor de índice fuera de rango
(guarda una cadena vacía):
insert into empleados (documento,nombre,sexo,estadocivil,sueldobasico)
values ('29333444','Lucas Perez','m',0,400);
insert into empleados (documento,nombre,sexo,estadocivil,sueldobasico)
values ('30336444','Federico Garcia','m',5,450);
insert into empleados (documento,nombre,sexo,estadocivil,sueldobasico)
values ('31333444','Karina Sosa','f','Concubino',500);
7- Seleccione todos los empleados solteros:
select * from empleados
where estadocivil='soltero';
8- Seleccione todos los empleados viudos usando el número de índice de la enumeración:
select * from empleados
where estadocivil=4;
Otros problemas:
A) Una empresa de turismo vende paquetes de viajes y almacena la información referente a los mismos
en una tabla llamada "viajes":
1- Elimine la tabla si existe.
2- Cree la tabla:
create table viajes(
codigo int unsigned auto_increment,
nombre varchar(50),
pension enum ('no','media','completa') not null,
hotel enum ('1','2','3','4','5'),/* cantidad de estrellas*/
dias tinyint unsigned,
salida date,
precioporpersona decimal(8,2) unsigned,
primary key(codigo)
);
4- Ingrese algunos registros:
insert into viajes (nombre,pension,hotel,dias,salida)
values ('Mexico mágico','completa','4',15,'2005-12-01');
insert into viajes (nombre,pension,hotel,dias,salida)
values ('Europa fantastica','media','5',28,'2005-05-10');
insert into viajes (nombre,pension,hotel,dias,salida)
values ('Caribe especial','no','3',7,'2005-11-25');
5- Intente ingresar un valor "null" para el campo "pension":
insert into viajes (nombre,pension,hotel,dias,salida)
values ('Mexico maravilloso',null,'4',15,'2005-12-01');
6- Ingrese valor nulo para el campo "hotel"
insert into viajes (nombre,pension,hotel,dias,salida)
values ('Mexico especial','media',3,18,'2005-11-01');
7- Ingrese un valor inválido, no presente en la lista de "pension" (guarda una cadena vacía):
insert into viajes (nombre,pension,hotel,dias,salida)
values ('Caribe especial','ninguna','4',18,'2005-11-01');
8- Ingrese un valor de índice fuera de rango para el campo "hotel":
insert into viajes (nombre,pension,hotel,dias,salida)
values ('Venezuela única','no',6,18,'2005-11-01');
9- Seleccione todos los viajes que incluyen media pensión:
select * from viajes
where pension=2;
10- Seleccione todos los viajes que incluyen un hotel de 4 estrellas:
select * from viajes
where hotel='4';
B) Una inmobiliaria vende inmuebles; los inmuebles pueden ser: casa, departamento, local o terreno.
1- Elimine la tabla "inmuebles" si existe.
2- Cree la tabla "inmuebles" para registrar la siguiente información:
- tipo de inmueble: tipo enum (casa,dpto,local,terreno), not null,
- domicilio: varchar(30),
- propietario: nombre del dueño,
- precio: decimal hasta $999999.99 positivo.
3- Ingrese algunos registros.
4- Seleccione el domicilio y precio de todos los departamentos en alquiler.
5- Seleccione el domicilio, propietario y precio de todos los locales en venta.
6- Seleccione el domicilio y precio de todas las casas disponibles.