sql comandos
I.
Dada la siguiente base de datos relacional:
RESUELVA LAS SIGUIENTES CONSULTAS EN SQL:
1.
Mostrar los nombres de los empleados ordenados alfabéticamente
(Z…A)
♦ select * from EMPLEADO order by nombre desc
2.
Seleccionar el nombre, el oficio y la localidad de los departamentos donde trabajan los Vendedores.
♦
select nombre, oficio, localizacion from EMPLEADO,DEPARTAMENTO where oficio ='Vendedor' and EMPLEADO.dept_no=DEPARTAMENTO.dept_no
3.
Listar los nombres de los empleados cuyo nombre termine con la letra ‘o’.
♦
select nombre from EMPLEADO where nombre like ‘%o’
4.
Seleccionar el nombre, el oficio y salario de los empleados que trabajan en León.
♦
select nombre, oficio, …ver más…
select oficio, sum(salario) from EMPLEADO group by oficio.
3
MÁS EJEMPLOS
21. 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)
22. Seleccionar el nombre del empleado que tiene máximo salario.
♦
select nombre from EMPLEADO where salario=(select max(salario) from EMPLEADO)
23. Mostrar el nombre del empleado que tiene el salario más bajo.
♦
select nombre from EMPLEADO where salario=(select min(salario) from EMPLEADO)
24. Mostrar los datos del empleado que tiene el salario más alto en el departamento de ‘VENTAS’.
♦
select nombre from
EMPLEADO,DEPARTAMENTO
where
EMPLEADO.depto_no= DEPARTAMENTO.depto_no and nombre_depto='VENTAS' and salario = (select max(salario) from EMPLEADO,DEPARTAMENTO where
EMPLEADO.depto_no = DEPARTAMENTO.depto_no and nombre_depto='VENTAS')
25. Visualizar el departamento con más empleados.
♦
select depto_no from
EMPLEADO group by count(*) having count(*) = (select max(count(*)) from EMPLEADO group by depto_no)
26. Visualizar el número de departamento que tenga más empleados cuyo oficio sea empleado.
♦
select depto_no from EMPLEADO where oficio='Empleado' group by depto_no having count(*) = (select max(count(*)) from
EMPLEADO
where oficio='Empleado' group by depto_no)
27. Mostrar el número de oficios distintos de cada departamento.
♦
select depto_no,count(*) from
EMPLEADO group by