Ejercicios
SQL access
1
EJERCICIOS SQL Crear en Access la base de datos Empresa_1 y ejecutar las
sentencias SQL EMPLEADOS ID_EMPLEADO NOMBRE APELLIDOS F_NACIMIENTO SEXO CARGO
SALARIO 1 Carlos Jiménez Clarín 1985/05/03 H Mozo 1500 2 Elena Rubio Cuestas
1978/09/25 M Secretaria 1300 3 José Calvo Sisman 1990/11/12 H Mozo 1400 4
Margarita Rodríguez Garcés 1992/05/16 M Secretaria 1325 SCRIPT:
•
CREACIÓN TABLAS CREATE TABLE EMPLEADOS( id_empleado
int primary Key NOT NULL, nombre char(50) NOT NULL, apellidos char(50) NOT
NULL, f_nacimiento date NOT NULL, sexo char(1) NOT NULL, cargo char(50) NOT
NULL, salario int NOT NULL );
•
INSERCION DE DATOS TABLA EMPLEADO
INSERT INTO EMPLEADOS
(id_empleado, nombre, apellidos, f_nacimiento, sexo, cargo, salario) VALUES
('1','Carlos','Jiménez Clarín','1985/05/03','H','Mozo','1500');
INSERT INTO EMPLEADOS (id_empleado, nombre, apellidos,
f_nacimiento, sexo, cargo, salario) VALUES ('2','Elena','Rubio
Cuestas','1978/09/25','M','Secretaria','1300');
INSERT INTO EMPLEADOS (id_empleado, nombre, apellidos,
f_nacimiento, sexo, cargo, salario) VALUES ('3','José','Calvo
Sisman','1990/11/12','H','Mozo','1400');
INSERT INTO EMPLEADOS (id_empleado, nombre, apellidos,
f_nacimiento, sexo, cargo, salario) VALUES ('4','Margarita','Rodríguez
Garcés','1992/05/16','M','Secretaria','1325'); • Ejemplo 1 ¿Qué empleados
tienen un salario mayor a 1350? select NOMBRE , APELLIDOS from EMPLEADOS where
SALARIO > 1350
• Ejemplo 2 ¿Realizar una consulta que
devuelva el nombre, apellidos y la fecha de nacimiento de aquellos empleados
que cobren más de 1350?
select NOMBRE , APELLIDOS , F_NACIMIENTO from EMPLEADOS where
SALARIO > 1350
• Ejemplo
3 ¿Qué empleados tienen un sueldo comprendido entre 1350 y 1450?
select NOMBRE ,
APELLIDOS from EMPLEADOS where SALARIO > 1350 and SALARIO <= 1450
• Ejemplo
4 ¿Qué empleados son hombres?
select NOMBRE , APELLIDOS from EMPLEADOS where SEXO = 'H'
• Ejemplo 5 ¿Cuáles son los nombres de los
empleados tienen el cargo de MOZO?
select NOMBRE from EMPLEADOS where CARGO = 'MOZO'
• Ejemplo
6 ¿Cuál es el empleado de código 4?
select APELLIDOS from
EMPLEADOS where ID_EMPLEADO = 4
Crear en Access la siguiente bases de Datos y Ejecutar las
sentencias SQL DEPARTAMENTO cod_dep nombre_dep localización 10 Desarrollo de
Software El Coyolar 20 Análisis de Sistemas Guadalupe 30 Contabilidad Subtiava
40 Ventas San Felipe EMPLEADO cod_emp nombre edad oficio dir fecha_ing salario
comisión cod_dep 1 Vargas Héctor 27 Vendedor León 12/05/1993 12000 40 2
Hernández Julio 27 Analista Chinandega 14/07/1982 13000 1500 20 3 Esquivel José
31 Director Juigalpa 05/06/1981 16700 1200 30 4 Delgado Carmen 37 Vendedor León
02/03/1983 13400 40 5 Castillo Luis 17 Vendedor Masaya 12/08/1982 16309 1000 40
6 Esquivel Alfonso 26 Presidente Nagarote 12/09/1981 15000 30 7 Pérez Luis 32
Empleado Managua 02/03/1980 16890 10 SCRIPT:
• CREACIÓN
TABLAS CREATE TABLE DEPARTAMENTO( cod_dep int
primary Key NOT NULL, nombre_dep char(50) NOT NULL, localización char (50) NOT
NULL ); CREATE TABLE EMPLEADO( cod_emp int primary Key NOT NULL, nombre char(50)
NOT NULL, edad int NOT NULL, oficio char(50) NOT NULL, dir char(50) NOT NULL,
fecha_ing char(50) NOT NULL, salario int NOT NULL, comisión int, cod_dep int
NOT NULL );
• INSERCION DE DATOS TABLA DEPARTAMENTO INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localización) VALUES
('10','Desarrollo de Software','El Coyolar');
INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep,
localización) VALUES ('20','Análisis de Sistemas','Guadalupe');
INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep,
localización) VALUES ('30','Contabilidad','Subtiava');
INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep,
localización) VALUES ('40','Ventas','San Felipe');
• INSERCION DE DATOS TABLA EMPLEADO
INSERT INTO EMPLEADO (cod_emp, nombre, edad,
oficio, dir, fecha_ing, salario, comisión, cod_dep) VALUES ('1','Vargas
Héctor','27','Vendedor','León','12/05/1993','12000',null,'40');
INSERT INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir,
fecha_ing, salario, comisión, cod_dep) VALUES ('2','Hernández Julio','27','
Analista',' Chinandega','14/07/1982','13000','1500','20');
INSERT
INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario,
comisión, cod_dep) VALUES ('3','Esquivel
José','31','Director','Juigalpa','05/06/1981','16700','1200','30'); INSERT INTO
EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario, comisión,
cod_dep) VALUES ('4','Delgado
Carmen','37','Vendedor','León','02/03/1983','13400',null,'40'); INSERT INTO
EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario, comisión,
cod_dep) VALUES ('5','Castillo Luis','17','Vendedor','Masaya','12/08/1982','16309','1000','40');
INSERT INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario,
comisión, cod_dep) VALUES ('6','Esquivel
Alfonso','26','Presidente','Naragote','12/09/1981','15000',null,'30'); INSERT INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir,
fecha_ing, salario, comisión, cod_dep) VALUES ('7','Pérez
Luis','32','Empleado','Managua','02/03/1980','16890',null,'10');
• Ejemplo
7 Listar los nombres de los empleados cuyo nombre termine con la letra ‘o’.
select nombre from EMPLEADO where nombre like '*o'
• Ejemplo
8 Seleccionar el nombre, el oficio y salario de los empleados que trabajan en
León. select nombre, oficio, salario from EMPLEADO
where dir='León'
• Ejemplo
9 Calcular el salario medio de todos los empleados.
select avg(salario)
from EMPLEADO
• Ejemplo
10 ¿Cuál es el máximo salario de los empleados del departamento número 10?
select max(salario) from EMPLEADO where cod_dep = 10
• Ejemplo
11 ¿Cuántos empleados hay en el departamento número 10?
select count(*) from
EMPLEADO where cod_dep = 10
• Ejemplo 12 ¿Cuántos empleados hay en el
departamento de VENTAS? select count(*) from EMPLEADO
where cod_dep=40
• Ejemplo
13 ¿Cuántos empleados no tienen comisión?
select count(*) from EMPLEADO where comisión is null
• Ejemplo
14 Se desea saber cuántos nombres de los empleados empiezan por la letra ‘A’.
select count(*) from EMPLEADO where nombre like 'E*'
• Ejemplo
15 Para cada oficio obtener la suma de salarios.
select oficio,
sum(salario) from EMPLEADO group by oficio
• Ejemplo
16 Mostrar los datos de los empleados cuyo salario sea mayor que la media de
todos los salarios.
select * from EMPLEADO
where salario>(select avg(salario) from EMPLEADO)
• Ejemplo
17 Seleccionar el nombre del empleado que tiene máximo salario.
select nombre from
EMPLEADO where salario=(select max(salario)from EMPLEADO)
• Ejemplo
18 Mostrar el nombre del empleado que tiene el salario más bajo.
select nombre from EMPLEADO where salario=(select
min(salario)from EMPLEADO)
• Ejemplo
19 Insertar en la tabla EMPLEADO un empleado con código 8, nombre ‘Cajas
Carlos’ de 32 años, oficio Analista, vive en Matagalpa, fecha de ingreso en la
empresa el 22-06-2001, su salario es de 15600, no tiene comisión y pertenece al
departamento 20.
INSERT INTO EMPLEADO
(cod_emp, nombre, edad, oficio, dir, fecha_ing, salario, comisión, cod_dep)
VALUES ('8','Cajas
Carlos','32','Empleado','Matagalpa','22/06/2001','15600',null,'20');
• Ejemplo
20 Insertar en la tabla DEPARTAMENTO un departamento cuyo número sea 50, de
nombre ‘GENERAL’ y cuya localización sea ‘Laborio’.
INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localización)
VALUES ('50','General','Laborio');
• Ejemplo
21 Insertar en la tabla DEPARTAMENTO un departamento cuyo número sea 60 y de
nombre ‘PRUEBAS’ y cuya localización sea ‘Puerto Cayo’.
INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localización)
VALUES ('60','Pruebas','Puerto Cayo');
• Ejemplo 22 Doblar el salario a todos los
empleados del departamento 30.
update EMPLEADO set salario = salario*2 where cod_dep=30
• Ejemplo 23 Cambiar todos los empleados del
departamento número 30 al departamento número 20.
update EMPLEADO set cod_dep = 20 where cod_dep = 30
• Ejemplo 24 Incrementar en un 10% el sueldo
de los empleados del departamento 10.
update EMPLEADO set salario=salario*1.1 where cod_dep=10
• Ejemplo
25 Cambiar la localidad del departamento número 10 a ‘Zaragoza’.
update EMPLEADO set
localizacion='Zaragoza' where cod_dep = 10
• Ejemplo
26 En la tabla DEPARTAMENTO borrar el departamento número 40.
delete from
DEPARTAMENTO where cod_dep = 40
• Ejemplo
27 En la tabla EMPLEADO borrar todos los empleados que sean del departamento
20. delete from EMPLEADO where cod_dep = 20
No hay comentarios.:
Publicar un comentario