Sie sind auf Seite 1von 7

Ejercicios

SQL en Access
SQL - Structured Query Language

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 Jimnez Clarn 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 Rodrguez Garcs 1992/05/16 M Secretaria 1325

SCRIPT:

CREACIN 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','Jimnez Clarn','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','Rodrguez Garcs','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 ms 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

P g i n a |2
SQL - Structured Query Language

Ejemplo 4
Qu empleados son hombres?
select NOMBRE , APELLIDOS
from EMPLEADOS
where SEXO = 'H'
Ejemplo 5
Cules son los nombres de los empleados tienen el cargo de MOZO?
select NOMBRE
from EMPLEADOS
where CARGO = 'MOZO'
Ejemplo 6
Cul es el empleado de cdigo 4?
select APELLIDOS
from EMPLEADOS
where ID_EMPLEADO = 4

P g i n a |3
SQL - Structured Query Language

Crear en Access la siguiente bases de Datos y Ejecutar las sentencias SQL

DEPARTAMENTO
cod_dep nombre_dep localizacin
10 Desarrollo de Software El Coyolar
20 Anlisis de Sistemas Guadalupe
30 Contabilidad Subtiava
40 Ventas San Felipe

EMPLEADO
cod_emp nombre edad oficio dir fecha_ing salario comisin cod_dep
1 Vargas Hctor 27 Vendedor Len 12/05/1993 12000 40
2 Hernndez 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 Len 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 Prez Luis 32 Empleado Managua 02/03/1980 16890 10

SCRIPT:

CREACIN TABLAS

CREATE TABLE DEPARTAMENTO( CREATE TABLE EMPLEADO(


cod_dep int primary Key NOT NULL, cod_emp int primary Key NOT NULL,
nombre_dep char(50) NOT NULL, nombre char(50) NOT NULL,
localizacin 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,
comisin int,
cod_dep int NOT NULL
);

INSERCION DE DATOS TABLA DEPARTAMENTO


INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localizacin)
VALUES ('10','Desarrollo de Software','El Coyolar');

INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localizacin)


VALUES ('20','Anlisis de Sistemas','Guadalupe');

INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localizacin)


VALUES ('30','Contabilidad','Subtiava');

INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localizacin)


VALUES ('40','Ventas','San Felipe');

INSERCION DE DATOS TABLA EMPLEADO


INSERT INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario, comisin, cod_dep)
VALUES ('1','Vargas Hctor','27','Vendedor','Len','12/05/1993','12000',null,'40');

INSERT INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario, comisin, cod_dep)
VALUES ('2','Hernndez Julio','27',' Analista',' Chinandega','14/07/1982','13000','1500','20');

INSERT INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario, comisin, 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, comisin, cod_dep)
VALUES ('4','Delgado Carmen','37','Vendedor','Len','02/03/1983','13400',null,'40');

INSERT INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario, comisin, 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, comisin, 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, comisin, cod_dep)
VALUES ('7','Prez Luis','32','Empleado','Managua','02/03/1980','16890',null,'10');

P g i n a |4
SQL - Structured Query Language

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 Len.
select nombre, oficio, salario
from EMPLEADO
where dir='Len'
Ejemplo 9
Calcular el salario medio de todos los empleados.
select avg(salario)
from EMPLEADO
Ejemplo 10
Cul es el mximo salario de los empleados del departamento nmero 10?
select max(salario)
from EMPLEADO
where cod_dep = 10
Ejemplo 11
Cuntos empleados hay en el departamento nmero 10?
select count(*)
from EMPLEADO
where cod_dep = 10
Ejemplo 12
Cuntos empleados hay en el departamento de VENTAS?
select count(*)
from EMPLEADO
where cod_dep=40
Ejemplo 13
Cuntos empleados no tienen comisin?
select count(*)
from EMPLEADO
where comisin is null
Ejemplo 14
Se desea saber cuntos 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

P g i n a |5
SQL - Structured Query Language

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 mximo salario.
select nombre
from EMPLEADO
where salario=(select max(salario)from EMPLEADO)
Ejemplo 18
Mostrar el nombre del empleado que tiene el salario ms bajo.
select nombre
from EMPLEADO
where salario=(select min(salario)from EMPLEADO)
Ejemplo 19
Insertar en la tabla EMPLEADO un empleado con cdigo 8, nombre Cajas Carlos de 32 aos, oficio Analista, vive
en Matagalpa, fecha de ingreso en la empresa el 22-06-2001, su salario es de 15600, no tiene comisin y pertenece
al departamento 20.
INSERT INTO EMPLEADO (cod_emp, nombre, edad, oficio, dir, fecha_ing, salario, comisin, 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 nmero sea 50, de nombre GENERAL y cuya
localizacin sea Laborio.
INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localizacin)
VALUES ('50','General','Laborio');

Ejemplo 21
Insertar en la tabla DEPARTAMENTO un departamento cuyo nmero sea 60 y de nombre PRUEBAS y cuya
localizacin sea Puerto Cayo.
INSERT INTO DEPARTAMENTO (cod_dep, nombre_dep, localizacin)
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 nmero 30 al departamento nmero 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

P g i n a |6
SQL - Structured Query Language

Ejemplo 25
Cambiar la localidad del departamento nmero 10 a Zaragoza.
update EMPLEADO
set localizacion='Zaragoza'
where cod_dep = 10
Ejemplo 26
En la tabla DEPARTAMENTO borrar el departamento nmero 40.
delete from DEPARTAMENTO
where cod_dep = 40
Ejemplo 27
En la tabla EMPELADO borrar todos los empleados que sean del departamento 20.
delete from EMPLEADO
where cod_dep = 20

P g i n a |7

Das könnte Ihnen auch gefallen