manual 100 consultas

39
UNIVERSIDAD NACIONAL DEL ALTIPLANO – PUNO FACULTAD DE INGENIERÍA MECÁNICA ELÉCTRICA, ELECTRÓNICA Y SISTEMAS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS 100 CONSULTAS BÁSICAS DE SQL SENTENCIAS SELECT Ing. ELMER COYLA IDME PUNO – PERÚ 2011

Upload: elmercoyla

Post on 21-Apr-2015

857 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: MANUAL 100 Consultas

UNIVERSIDAD NACIONAL DEL ALTIPLANO – PUNO FACULTAD DE INGENIERÍA MECÁNICA ELÉCTRICA, ELECTRÓNICA Y SISTEMAS

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

100 CONSULTAS BÁSICAS DE SQL

SENTENCIAS SELECT

Ing. ELMER COYLA IDME

PUNO – PERÚ

2011

Page 2: MANUAL 100 Consultas

Consultas SQL

- 2 -

DEDICATORIA

todos los grandes maestros de la Escuela de Post Grado de la

Universidad Nacional de Educación “Enrique Guzman y Valle” La

Cantuta de la Mención de Docencia Universitaria, a todos los estudiantes

de la Escuela Profesional de Ingeniería de Sistemas de la Universidad Nacional

del Altiplano de Puno de la Asignatura de Tecnologías de Desarrollo de

Aplicaciones Semestre 2007 – I, a los estudiantes el Instituto Superior

Pedagógico Público “Alianza Ichuña - Bélgica” de Moquegua de la Carrera

Profesional de Computación e Informática Promoción 2007 y a los estudiantes del

Instituto Superior Tecnológico Público “Alianza Ichuña - Bélgica” de la Carrera

Profesional de Computación e Informática, Promoción 2002 – 2003 y 2004, por

sus valiosas sugerencias, comprensión y ánimo; sin ustedes no hubiera sido

posible la culminación de este Solucionario.

El Autor.

A

Page 3: MANUAL 100 Consultas

Elmer Coyla Idme

- 3 -

PRESENTACION

l objetivo de este documento es guiar su aprendizaje del comando

SELECT del SLQ Server, la idea es que, estando conectado al analizador

de consultas, lea este material mientras ejercita simultáneamente cada

una de las distintas modalidades del comando SELECT.

A lo largo de este solucionario se hace referencia a las tablas departamento

(DEPT) y empleado (EMP) de una empresa, usadas en los tutoriales de los

productos ORACLE.

Agradezco muy profundamente la comprensión a todos los futuros profesionales,

sobre las deficiencias que pudieran existir en la codificación o razones de error en

la digitación, en las diversas consultas, pero al menos hago un alcance a aquellos

que verdaderamente lo necesitan y estoy seguro que a de servir de mucho en su

formación profesional. Le rogamos que cualquier crítica, sugerencia, o inquietud,

la dirija a la siguiente dirección [email protected], que gustosos lo

responderé con el ánimo de mejorar en futuras ediciones.

Elmer Coyla Idme

E

Page 4: MANUAL 100 Consultas

Consultas SQL

- 4 -

ESQUEMA SCOTT

CONTENIDO DE LAS TABLAS

Page 5: MANUAL 100 Consultas

Elmer Coyla Idme

- 5 -

CONSULTAS 1. Obtener los datos completos de los empleados.

Consulta: select * from emp Respuesta :

2. Obtener los datos de los departamentos.

Consulta: select * from dept Respuesta :

3. Hallar los datos de los administrativos.

Consulta: select empno, ename, mgr, sal from emp where job='administrativo' Respuesta :

4. Hallar los datos de los administrativos. Pero orden ado por nombre.

Consulta: select empno, ename, job, mgr, sal from emp where job='administrativo' order by ename asc

Page 6: MANUAL 100 Consultas

Consultas SQL

- 6 -

Respuesta :

5. El mismo pero modificado de alguna forma la sentenc ia anterior.

Consulta: select empno, ename, job, mgr, sal from emp where job='administrativo'

and sal > 1000 order by ename Respuesta :

6. Obtener el nombre y el salario de los empleados.

Consulta: select ename,sal from emp Respuesta :

7. Hallar el nombre de los departamentos.

Consulta: select dname from dept

Page 7: MANUAL 100 Consultas

Elmer Coyla Idme

- 7 -

Respuesta :

8. Hallar el nombre de los departamentos. Pero ordenad o por nombre.

Consulta: select dname from dept order by dname asc Respuesta :

9. Lo mismo pero ordenado por la ciudad.

Consulta: select dname, loc from dept order by loc asc Respuesta :

10. Hallar los nombres de los departamentos ordenados p or su ciudad, pero

en orden inverso. Consulta: select dname, loc from dept order by loc desc Respuesta :

11. Obtener el nombre y el empleo de los empleados, ord enados por salario.

Consulta: select ename, job, sal from emp order by sal

Page 8: MANUAL 100 Consultas

Consultas SQL

- 8 -

Respuesta :

12. Idéntico Pero ordenados ahora por empleo y salario.

Consulta: select ename, job, sal from emp order by job, sal Respuesta :

13. Idéntico. Pero ordenado inversamente por empleo y n ormalmente por

salario. Consulta: select ename, job, sal from emp order by job desc, sal asc

Page 9: MANUAL 100 Consultas

Elmer Coyla Idme

- 9 -

Respuesta :

14. Obtener los salarios y las comisiones de los emple ados del

departamento 30. Consulta: select deptno,ename, sal, comm from emp where deptno =30 Respuesta :

15. Idéntico, pero ordenado por comisión.

Consulta: select deptno,ename, sal, comm from emp where deptno =30 order by comm asc Respuesta :

16. Obtener las distintas comisiones.

Consulta: select distinct comm from emp

Page 10: MANUAL 100 Consultas

Consultas SQL

- 10 -

Respuesta :

17. Hallar las distintas comisiones y los nombres de lo s empleados.

Consulta: select distinct comm, ename from emp where comm is not null Respuesta :

18. Hallar los distintos salarios.

Consulta: select distinct sal from emp Respuesta :

19. Obtener comisiones y los números de los departament os posibles de la

empresa, de manera que no se repita. Consulta: select distinct comm, deptno from emp where comm is not null

Page 11: MANUAL 100 Consultas

Elmer Coyla Idme

- 11 -

Respuesta :

20. Obtenga los nuevos salarios que resultarían de suma r a los empleados

30 una nueva gratificación de 1000 unidades monetar ias. Consulta: select deptno, sal +1000 AS 'NUEVO SALARIO' from emp where deptno=30 Respuesta :

21. Idéntico, pero obteniendo también el salario anteri or.

Consulta: select deptno, sal, sal +1000 AS 'NUEVO SALARIO' from emp where deptno=30 Respuesta :

22. Hallar los empleados que tienen una comisión superi or a la mitad de su

salario. Consulta: select ename from emp where comm >(sal/2) Respuesta :

Page 12: MANUAL 100 Consultas

Consultas SQL

- 12 -

23. Hallar los empleados cuya comisión es menor o igual que el 25% del sueldo. Consulta: select ename from emp where comm <=(sal*0.25) Respuesta :

24. Haga que en cada fila figura ‘nombre’ y ‘puesto’ an teponiéndose a su

respectivo valor. Consulta: select 'Nombre:', ename, 'Puesto:', job from emp Respuesta :

25. Hallar el salario y la comisión de los empleados cu yo número de

empleado supera a 7500. Consulta: select empno,sal, comm from emp where empno>7500

Page 13: MANUAL 100 Consultas

Elmer Coyla Idme

- 13 -

Respuesta :

26. Si dividimos a los empleados en dos grupos A y B, e mpezando los del

grupo B en la letra J, Obtén los nombres y empleos de los del grupo B, por orden alfabético. Consulta: select ename, job from emp where substring(ename,1,1)>'j' order by ename asc Respuesta :

27. Obtener el salario, la comisión y el salario total (salario + comisión) de

los empleados con comisión, ordenado por numero de empleado. Consulta: select sal, comm, (sal+comm) as 'salario total' from emp where comm is not null order by empno asc Respuesta :

Page 14: MANUAL 100 Consultas

Consultas SQL

- 14 -

28. Idéntico, pero para los que no tienen comisión. Consulta: select sal, comm, (sal) as 'salario total' from emp where comm is null order by empno asc Respuesta :

29. Hallar el nombre de los empleados que teniendo un s alario superior a

1000, tienen como director al empleado de código 76 98. Consulta: select ename, mgr from emp where sal > 1000 and mgr =7698 Respuesta :

30. Hallar el conjunto complementario del resultado del ejercicio anterior.

Consulta: select ename, mgr from emp where sal < 1000 and mgr <>7698 Respuesta :

31. Hallar el porcentaje que supone la comisión sobre e l salario total

ordenado por nombre. Consulta: select ename , sal+comm as 'salario total', comm, round((100*comm/(sal+comm)),0) as 'porcentaje' from emp where comm is not null order by ename

Page 15: MANUAL 100 Consultas

Elmer Coyla Idme

- 15 -

Respuesta :

32. Hallar los empleados del departamento 10 cuyo nombr e contenga la

cadena “LA” Consulta: select ename from emp where deptno = 10 and ename not like '%la%' Respuesta :

33. Obtener los empleados que no son supervisados por ningún otro.

Consulta: select ename, mgr from emp where mgr is null Respuesta :

34. Obtener los nombres de los departamentos que no sea n “SALES” ni

“RESEARCH”, ordenados por localidad. Consulta: select dname from dept where not dname='ventas' and not dname ='investigacion' order by loc Respuesta :

35. Deseamos conocer el nombre y departamento de los ad ministrativos que

no trabajan en el departamento 10 y cuyo salario es superior a 800, ordenados por la fecha de incorporación. Consulta: select ename, deptno, sal , hiredate from emp where job='administrativo' and deptno<>10 and sal > 800 order by hiredate asc

Page 16: MANUAL 100 Consultas

Consultas SQL

- 16 -

Respuesta :

36. Para los empleados que tienen comisión obtener sus nombres en orden

alfabético y el cociente entre salarios y comisión. Consulta: select ename, comm , sal/comm from emp where comm is not null order by ename Respuesta :

37. Obtener información de empleados cuyos nombre cont iene exactamente

5 caracteres. Consulta: select ename from emp where len(ename)=5 Respuesta :

38. Idéntico, pero cuyo nombre contengan al menos cinco caracteres.

Consulta: select ename from emp where len(ename)>=5

Page 17: MANUAL 100 Consultas

Elmer Coyla Idme

- 17 -

Respuesta :

39. Hallar los datos de los empleados para los que, su nombre comiencen

con A y su salario es mayor que 1000 Consulta: select ename, job, mgr, sal, deptno from emp where (ename like '[a]%' and sal>1000) Respuesta :

40. Hallar el nombre y el salario total de todos los em pleados y ordenados

por este ultimo y por su propio salario. Consulta: select ename, sal+comm as 'salario total' , sal from emp order by sal+comm, sal Respuesta :

Page 18: MANUAL 100 Consultas

Consultas SQL

- 18 -

41. Obtener los nombres, salarios y comisión de los emp leados que perciben un salario situado entre la mitad de la co misión y la propia comisión. Consulta: select ename, sal, comm from emp where sal between comm/2 and comm order by comm Respuesta :

42. El complementario del anterior.

Consulta: select ename, sal, comm from emp where sal not between comm/2 and comm order by comm Respuesta :

43. Intentar lograr los nombres y empleos de los emplea dos tales que su

empleo acaba en “IVO” y su nombre empieza con A. Consulta: select ename, job from emp where ename like '[a]%'and job like '%ivo' Respuesta :

44. Si te ha resultado muy fácil el anterior prueba a i ntentar con un

predicado simple. Supón que el nombre de un empleo tiene al menos cinco caracteres. Consulta: select ename, job from emp where len(job)> 5 and ename like '[a]%'and job like '%ivo' Respuesta :

Page 19: MANUAL 100 Consultas

Elmer Coyla Idme

- 19 -

45. Hallar los nombres de los empleados que tienen como máximo cinco caracteres en su nombre. Consulta: select ename from emp where len(ename)<=5 Respuesta :

46. Suponiendo que el año próximo la subida del total p ercibido por ejemplo

es del 6% y el siguiente de 7% hallar los nombres y salarios totales actuales y futuros de todos los empleados, indicand o para cada uno si tienen o no comisión. Consulta: select ename, comm, sal+comm as 'Salario total', (sal+comm)+(0.06*(sal+comm)) as '6%', (sal+comm)+(0.07*(sal+comm)) as '7%' from emp where comm is not null union select ename, comm,sal, sal+(0.06*sal),sal+(0.07*sal) from emp where comm is null Respuesta :

Page 20: MANUAL 100 Consultas

Consultas SQL

- 20 -

47. Hallar el nombre y la fecha de ingreso de los emple ados que no son vendedores. Consulta: select ename, hiredate from emp where job <> 'vendedor' Respuesta :

48. Obtener la información disponible de los empleados de numero uno de

los siguientes; 7844, 7900, 7521, 7782 y 7369, pero no uno de entre: 7902, 74 99 ni 7878. el interés del ejercicio radico en q ue el predicado no debe ser muy extenso. Consulta: select ename from emp where empno in (7844,7900,7521,7782,7934,7678,7369) and empno not in (7902,7839,7499,7878) Respuesta :

49. Hallar los salarios totales de todos los empleados.

Consulta: select ename, comm+sal as 'Salario Final' from emp where comm is not null union select ename, sal from emp where comm is null

Page 21: MANUAL 100 Consultas

Elmer Coyla Idme

- 21 -

Respuesta :

50. Ordena los empleados por su departamento y luego de manera

descendente por su número. Consulta: select ename, deptno, empno from emp order by deptno, empno desc Respuesta :

51. Para los empleados que tienen como director a algún otro con número

mayor que el suyo, obtener los que reciben el salar io mas de 1000 y menos de 2000. Consulta: select ename, mgr,empno, sal, deptno from emp where mgr>empno and sal between 1000 and 2000

Page 22: MANUAL 100 Consultas

Consultas SQL

- 22 -

Respuesta :

52. Obtén el salario más alto de la empresa, el total destinado a comisiones

y el número de empleados. Consulta: select max(sal) as 'Maximo Salario', sum(comm) as 'Total de comisiones', count(empno) as 'Total de Empleados' from emp Respuesta :

53. Hallar los datos de los empleados cuyo salario es m ayor que el del

empleado de código 7934 ordenando por su propio sal ario Consulta: select ename, sal from emp where sal >(select sal from emp where empno=7934) order by sal asc Respuesta :

54. Obtén información en la que se refleja en nombre, empleo y salarios

tanto de los que superan el salario de Allen como d el propio Allen. Consulta: select ename, job,sal from emp where sal >(select sal from emp where ename='allen')

Page 23: MANUAL 100 Consultas

Elmer Coyla Idme

- 23 -

Respuesta :

55. Hallar el nombre del último empleado por orden alfa bético.

Consulta: select ename from emp where ename>= all(select ename from emp) Respuesta :

56. Halla el salario más alto, el más bajo y la diferencia entre ellos.

Consulta: select max(sal)as 'salario maximo', min(sal) as 'salario minimo', (max(sal)- min(sal)) as 'diferencia' from emp Respuesta :

57. Sin conocer los resultado del ejercicio anterior, ¿ Quiénes reciben el

salario mas alto y mas bajo y a cuanto ascienden?. Consulta: select ename, sal from emp where sal >= all(select sal from emp) union select ename, sal from emp where sal <= all(select sal from emp) Respuesta :

58. Hallar la media de los salarios de los departamento s cuyo salario mínimo

supera a 900, considerando los salarios inferiores a 5000. además se nenecita el código y el nombre de los departamentos . Consulta: select e.deptno, d.dname, avg(sal) as 'Salario promedio' from emp e, dept d where e.deptno=d.deptno and e.deptno not in(select deptno from emp where sal <=900) group by d.dname, e.deptno

Page 24: MANUAL 100 Consultas

Consultas SQL

- 24 -

Respuesta :

59. ¿Qué empleados trabajan en ciudades que tienen mas de cinco letras?.

Ordena el resultado inversamente por ciudades y nor malmente por nombres de empleados. Consulta: select e.ename, d.loc from emp e, dept d where e.deptno=d.deptno and len(d.loc)>5 order by d.loc desc , e.ename Respuesta :

60. Hallar los empleados cuyo salario supera o coincide con la media del

salario de la empresa. Consulta: select ename, sal from emp where sal >= all (select avg(sal) from emp) Respuesta :

Page 25: MANUAL 100 Consultas

Elmer Coyla Idme

- 25 -

61. Obtén los empleados cuyos salarios supera al de sus compañeros de departamento. Consulta: select e.ename, e.sal, e.deptno from emp e where e.sal >= all(select sal from emp where deptno=e.deptno) order by sal Respuesta :

62. ¿Cuántos empleados diferentes, empleados y diferent es salarios

encontramos en el departamento 30, y a que cantidad asciende la suma de los salarios de dicho departamento? Consulta: select count(distinct job) as 'Empleos', count(ename) as 'Empleados', count(distinct sal) as 'Salarios', sum(sal) as 'Total de salarios' from emp where deptno=30 Respuesta :

63. ¿Cuántos empleados tienen comisión?

Consulta: select count(comm) as 'Cantidad de empleados con comision' from emp Respuesta :

64. ¿Cuántos empleados tienen el departamento 20?

Consulta: select count(e.empno) as 'Cant. de Emp del Dept 10' from emp e, dept d where e.deptno=d.deptno and d.deptno=10 Respuesta :

Page 26: MANUAL 100 Consultas

Consultas SQL

- 26 -

65. Halla los departamentos que tienen más de tres empl eados y el número de empleados de los mismos. Consulta: select e.deptno, d.dname, count(e.ename)as 'Cant de Empleados' from emp e, dept d where d.deptno=e.deptno and 3<(select count(ename) from emp where deptno=d.deptno) group by dname, e.deptno Respuesta :

66. Halla los empleados que tienen por lo menos un empl eado a su mando,

ordenando inversamente por nombre. Consulta: select ename from emp where empno in(select mgr from emp) order by ename desc Respuesta :

67. Halla la suma de los salarios de cada departamento.

Consulta: select d.dname, sum(e.sal) as 'suma de salarios' from emp e, dept d where e.deptno=d.deptno group by d.dname Respuesta :

Page 27: MANUAL 100 Consultas

Elmer Coyla Idme

- 27 -

68. Obtén todos los departamentos sin empleados. Consulta: select distinct d.deptno,d.dname from emp e, dept d where d.deptno not in(select e.deptno from emp e, dept d where e.deptno=d.deptno) Respuesta :

69. ¿Cuántos empleos hay en cada departamento y cual es la media del

salario de cada uno?. Consulta: select count(e.ename), avg(e.sal) from emp e, dept d where e.deptno=d.deptno group by d.deptno Respuesta :

70. Halla los empleados del departamento 30 por orden d escendente de

comisión. Consulta: select ename, deptno, comm from emp where deptno=30 order by comm desc Respuesta :

71. Obtener los empleados que trabajan en Dallas o en New York.

Consulta: select ename from emp where deptno in(select deptno from dept where loc='dallas' or loc='new york')

Page 28: MANUAL 100 Consultas

Consultas SQL

- 28 -

Respuesta :

72. Hállense los empleados con salario mayor de cada de partamento. Se

debe incluir el salario y el nombre del departament o. Consulta: select e.ename, e.sal, d.dname from emp e, dept d where d.deptno=e.deptno and e.sal>= all(select sal from emp where deptno=e.deptno) Respuesta :

73. Seleccionar los empleos que hay en cada departament o, ordenados por

departamento. Consulta: select deptno, job from emp order by 1 Respuesta :

Page 29: MANUAL 100 Consultas

Elmer Coyla Idme

- 29 -

74. Calcular el salario anual a percibir por cada emple ado.

Consulta: select ename, sal *4*12 as 'Salario Anual' from emp Respuesta :

75. Seleccionar aquellos empleados que hayan entrado an tes del 1/1/82.

Consulta: select ename, hiredate from emp where hiredate < '1/1/82' Respuesta :

76. Seleccionar los empleados cuyo salario sea superior al de ADAMS.

Consulta: select ename from emp where sal >(select sal from emp where ename = 'adams')

Page 30: MANUAL 100 Consultas

Consultas SQL

- 30 -

Respuesta :

77. Seleccionar los empleados que trabajan en el mismo departamento que

CLARK. Consulta: select ename from emp where deptno=(select deptno from emp where ename = 'clark') Respuesta :

78. Encontrar a los empleados cuyo jefe es BLAKE.

Consulta: select ename from emp where mgr=(select empno from emp where ename='blake') Respuesta :

79. Seleccionar aquellos empleados que tienen comisión.

Consulta: select ename from emp where comm is not null

Page 31: MANUAL 100 Consultas

Elmer Coyla Idme

- 31 -

Respuesta :

80. Seleccionar los empleados que trabajan en Chicago.

Consulta: select ename from emp where deptno in(select deptno from dept where loc='chicago') Respuesta :

81. Seleccionar los empleados que ganen más que alguno de los

Vendedores. Consulta: select ename from emp where sal > some(select sal from emp where job='vendedor') Respuesta :

82. Seleccionar aquellos empleados que hayan entrado en 1981.

Consulta: select ename, hiredate from emp where hiredate between '1/1/1981'and'31/12/1981'

Page 32: MANUAL 100 Consultas

Consultas SQL

- 32 -

Respuesta :

83. Seleccionar aquellos empleados cuyo nombre tenga c omo segunda

letra una ‘D’. Consulta: select ename from emp where ename like '_d%' Respuesta :

84. Seleccionar el salario mínimo, máximo y medio de lo s empleados

agrupados por empleo, pero sólo aquellos cuya media sea superior a 4000. Consulta: select job, min(sal), max(sal), avg(sal) from emp group by job having avg(sal)> 4000 Respuesta :

85. El salario medio y mínimo de cada puesto, mostrando en el resultado

aquellos cuyo salario medio esté por encima de 1500 . Consulta: select job, avg(sal), min(sal) from emp group by job having avg(sal)>1500 Respuesta :

Page 33: MANUAL 100 Consultas

Elmer Coyla Idme

- 33 -

86. ¿Cuántos empleados trabajan en Chicago?. Consulta: select count(*) from emp, dept where emp.deptno=dept.deptno and loc='chicago' Respuesta :

87. ¿Qué empleados trabajan en Dallas?.

Consulta: select ename from emp, dept where emp.deptno=dept.deptno and loc='dallas' Respuesta :

88. Nombre de todos los empleados, empleo, departamento y localidad.

Consulta: select ename, job, emp.deptno, loc from emp, dept where emp.deptno=dept.deptno Respuesta :

89. Seleccionar el nombre de cada empleado, y el número y el nombre de su

jefe. Consulta: select e1.ename, e1.mgr, e2.ename from emp e1, emp e2 where e2.empno=e1.mgr order by e1.ename

Page 34: MANUAL 100 Consultas

Consultas SQL

- 34 -

Respuesta :

90. Mostrar el nombre del empleado, su trabajo, el nomb re y el código del

departamento en el que trabaja. Consulta: select ename,job, dname, dept.deptno from emp, dept where emp.deptno=dept.deptno Respuesta :

91. Nombres de los empleados que trabajan en Chicago.

Consulta: select ename from emp e where exists(select * from dept d where e.deptno=d.deptno and loc='chicago')

Page 35: MANUAL 100 Consultas

Elmer Coyla Idme

- 35 -

Respuesta :

92. Visualice el número de los departamentos que tengan más de tres

empleados asignados. Consulta: select distinct deptno from emp e1 where 3<(select count(*) from emp e2 where e1.deptno=e2.deptno) Respuesta :

93. Listar el nombre de los empleados que ganan menos q ue sus

supervisores. Consulta: select ename from emp e1 where sal<(select sal from emp e2 where e2.empno=e1.mgr) Respuesta :

Page 36: MANUAL 100 Consultas

Consultas SQL

- 36 -

94. Encontrar el ename, dname, job y sal de los emplead os que trabajen en el mismo departamento que ‘turner’ y su salario sea mayor que la media del salario del departamento 10. Consulta: select ename, dname, job, sal from emp, dept where emp.deptno=dept.deptno and emp.deptno=(select deptno from emp where ename='turner') and sal > (select avg(sal) from emp where deptno =30) Respuesta :

95. Listar el nombre, trabajo, departamento, localidad y salario de aquellos

empleados que tengan un salario mayor de 2000 y tra bajen en ‘Dallas’ o ’New York’. Consulta: select ename,job,emp.deptno, loc, sal from emp,dept where emp.deptno=dept.deptno and sal>2000 and loc in ('dallas','new york') Respuesta :

96. Mostrar el nombre, cargo y sueldo para todos los em pleados excepto los

gerentes. Consulta: select ename,job, sal from emp where job!='gerente' Respuesta :

Page 37: MANUAL 100 Consultas

Elmer Coyla Idme

- 37 -

97. Listar el nombre, sueldo mensual, sueldo diario (ba sado en un mes de 22 días hábiles), y sueldo diario redondeado al dólar entero más cercano, para Allen y Jones. Consulta: select ename,sal,sal/22, round(sal/22,0) from emp where ename in('allen','jones') Respuesta :

98. Mostrar el salario promedio anual para todos los ca rgos que tengan más

de dos empleados. Consulta: select job, 12*avg(sal) from emp group by job having count(*) > 2 Respuesta :

99. Mostrar cada departamento, seguido de su número de empleados.

Consulta: select deptno, count(*) from emp group by deptno Respuesta :

Page 38: MANUAL 100 Consultas

Consultas SQL

- 38 -

100. Mostrar el número de empleados para cada cargo en c ada departamento. Consulta: select deptno, job, count(*) from emp group by deptno, job Respuesta :

Page 39: MANUAL 100 Consultas

Elmer Coyla Idme

- 39 -

“El que no sabe

es un imbécil.

El que sabe y

calla

es un criminal…”.

Bertolt Brecht