Anda di halaman 1dari 3

Asensio Emilio Rebollo Gmez

2 ASIR

EJERCICIOS PROPUESTOS
CONSULTA
1. Seleccionar de la tabla EMPLE aquellas filas cuyo APELLIDO
empiece por "A" y el OFICIO tenga una "E" en cualquier posicin.
SELECT APELLIDO, OFICIO
FROM EMPLE
WHERE APELLIDO LIKE 'A%' AND OFICIO LIKE '%E%'

2. Seleccionar el apellido, el oficio y la localidad de los departamentos


donde trabajan los ANALISTAS.
SELECT APELLIDO, OFICIO,LOC
FROM DEPART,EMPLE
WHERE OFICIO = 'ANALISTA'

3. Mostrar los empleados (nombre, oficio, salario y fecha de alta) que


desempeen el mismo oficio que "JIMNEZ" o que tengan un
salario mayor o igual que "FERNNDEZ".
SELECT APELLIDO,OFICIO,SALARIO,FECHA_ALT
FROM EMPLE
WHERE OFICIO =(SELECT OFICIO FROM EMPLE WHERE APELLIDO='JIMNEZ')OR
SALARIO=(SELECT SALARIO FROM EMPLE WHERE APELLIDO =' FERNNDEZ')

4. Mostrar en pantalla el nombre, oficio y salario de los empleados del


departamento de "FERNNDEZ" que tengan su mismo salario.
SELECT APELLIDO,OFICIO,SALARIO
FROM EMPLE
WHERE
DEPT_NO=(SELECT
DEPT_NO
FROM
EMPLE
WHERE
APELLIDO='FERNNDEZ')AND SALARIO=(SELECT SALARIO FROM EMPLE WHERE
APELLIDO='FERNNDEZ')

5. Presentar los nombres y oficios de los empleados que tienen el


mismo trabajo que "JIMNEZ".
SELECT APELLIDO,OFICIO
FROM EMPLE
WHERE OFICIO=(SELECT OFICIO FROM EMPLE WHERE APELLIDO='JIMNEZ')

Sistemas Gestores de Base de Datos

Pgina 1

Asensio Emilio Rebollo Gmez

2 ASIR

AGRUPAMIENTO
6. Visualizar los departamentos en los que el salario medio es mayor
o igual que la media de todos los salarios.
SELECT DEPT_NO AS DEPARTAMENTO,AVG(SALARIO) AS MEDIA
FROM EMPLE
GROUP BY DEPT_NO
HAVING AVG(SALARIO)>= (SELECT AVG(SALARIO) FROM EMPLE)

7. A partir de la tabla EMPLE, visualizar el nmero de vendedores del


departamento 'VENTAS'.
SELECT OFICIO, COUNT(*) AS VENDEDORES
FROM EMPLE,DEPART
WHERE EMPLE.DEPT_NO=DEPART.DEPT_NO AND DNOMBRE='VENTAS'
GROUP BY OFICIO

8. Partiendo de la tabla EMPLE, visualizar por cada oficio de los


empleados del departamento 'VENTAS' la suma de salarios.
SELECT OFICIO, COUNT(*) AS VENDEDORES,SUM(SALARIO) AS SUMA
FROM EMPLE,DEPART
WHERE EMPLE.DEPT_NO=DEPART.DEPT_NO AND DNOMBRE='VENTAS'
GROUP BY OFICIO;

9. Seleccionar aquellos apellidos de la tabla EMPLE cuyo salario sea


igual a la media de su salario en su departamento.
SELECT APELLIDO,OFICIO,SALARIO,AVG(SALARIO) AS MEDIA
FROM EMPLE
GROUP BY OFICIO,APELLIDO,SALARIO
HAVING SALARIO =(SELECT AVG(SALARIO))

10. A partir de la tabla EMPLE, visualizar el nmero de empleados de


cada departamento cuyo oficio sea 'EMPLEADO'.
SELECT APELLIDO,OFICIO, COUNT(*) AS EMPLEADOS
FROM EMPLE E INNER JOIN DEPART D ON E.DEPT_NO=D.DEPT_NO
GROUP BY OFICIO,APELLIDO
HAVING OFICIO='EMPLEADO'

Sistemas Gestores de Base de Datos

Pgina 2

Asensio Emilio Rebollo Gmez

2 ASIR

11. Desde la tabla EMPLE, visualizar el departamento que tenga ms


empleados cuyo oficio sea 'EMPLEADO'.
SELECT DEPT_NO "Departamento", COUNT (*) "Empleados con Oficio
EMPLEADO"
FROM EMPLE
WHERE OFICIO='EMPLEADO'
GROUP BY DEPT_NO
HAVING COUNT(*)=(SELECT MAX (COUNT(*)) FROM EMPLE WHERE OFICIO
='EMPLEADO' GROUP BY DEPT_NO )
Me da error:
Mens. 130, Nivel 15, Estado 1, Lnea 5
No es posible usar una funcin de agregado con una expresin que contiene un agregado o
una subconsulta.

12. A partir de las tablas EMPLE y DEPART, visualizar el nmero de


departamento y el nombre de departamento que tenga ms
empleados cuyo oficio sea 'EMPLEADO'.
SELECT DNOMBRE AS NOMBRE_DEPARTAMENTO,E.DEPT_NO AS
DEPARTAMENTO,COUNT(*)AS EMPLEADOS_CON_OFICIO_EMPLEADO
FROM EMPLE E,DEPART D
WHERE E.DEPT_NO=D.DEPT_NO AND OFICIO='EMPLEADO'
GROUP BY E.DEPT_NO,DNOMBRE
HAVING COUNT(*)=(SELECT MAX(COUNT(*))FROM EMPLE WHERE
OFICIO='EMPLEADO'GROUP BY DEPT_NO)

Me da error:
Mens. 130, Nivel 15, Estado 1, Lnea 5
No es posible usar una funcin de agregado con una expresin que contiene un agregado o
una subconsulta.

13. Buscar los departamentos que tienen ms de dos personas


trabajando en la misma profesin.
SELECT DEPT_NO,count(*)AS PERSONAS
FROM emple
GROUP BY dept_no,oficio
HAVING count(*)>2;

Sistemas Gestores de Base de Datos

Pgina 3

Anda mungkin juga menyukai