版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、tema 11.-sentencia select está mal construida, arréglala y ejecútala para que funcione de forma la siguiente correcta. guarda la consulta con el nombre p1q2.sql:select empno, ename salary x 12 annual salaryfrom emp;solución:select empno, ename, sal*12 as "annual salary"
2、from emp2.-muestra la estructura de la tabla dept. selecciona todos los datos de la tabla dept y guarda la consulta con el nombre p1q2.sql.solución:select *from dept3.-muestra la estructura de la tabla emp. crea una consulta para mostrar el nombre, el trabajo, la fecha de contrato y el núm
3、ero de empleado para cada empleados con el número de empleado apareciendo en primer lugar. guarda la sentencia con el nombre p1q3.sql.solución:select empno, ename, hiredatefrom emp4.-crear una consulta que muestre los distintos trabajos de la tabla emp. guarda la consulta con el nombre p1q
4、4.sqlsolución:select distinct(job)from emp5.-columna el título emp#, en la segunda employee, en la tercera job y en la última hire date. guarda la consulta modifica la consulta del ejercicio 3 de manera que se muestre en la cabecera de la primera con el nombre p1q5.sql.solución:s
5、elect empno "emp#", ename "employee", job"job", hiredate "hire date"from emp6.-muestra el nombre concatenado con el trabajo, separado por una coma y un espacio, y el nombre de la columna será empleado y cargo.solución:select ename|', '|job as
6、 "empleado y cargo"from emp;7.-crear una consulta que muestra todos los datos de la tabla emp en una sola columna. separa cada una de las columnas que has de concatenar, con una coma. ponle como alias a la columna que has seleccionado the output.solución:select empno|', '|enam
7、e|', '|job|', '|mgr|', '|hiredate|', '|sal|', '|comm|', '|deptno "the output"from emp;tema 21.-crear una consulta para mostrar el nombre y el salario de los empleados que ganan más de 2850. guarda la consulta en el fichero p2q1.sql.soluc
8、ión:select ename, sal from empwhere sal >28502.-crear una consulta para mostrar el número de empleado, el nombre y el número de departamento del empleado cuyo número es el 7566. guarda la consulta en el fichero p2q2.sql.solución:select empno, ename, deptnofrom empwhere em
9、pno=75663.-modifica el ejercicio p2q1.sql para mostrar el nombre y el salario de todos los empleados cuyo salario no está en el intervalo comprendido entre 1500$ y 2850$. guarda la nueva consulta con el nombre p2q3.sql.solución:select ename, salfrom empwhere sal <1500 or sal >2850ord
10、er by sal4.-mostrar el nombre, el cargo y la fecha de contrato de los empleados contratados entre el 20 de febrero de 1981 y el 1 de mayo de 1981. ordena la consulta ascendentemente por la fecha de contrato. guardar la consulta en el fichero p2q4.sql.solución:select ename, job, hiredatefrom emp
11、where hiredate >= '20/02/81' and hiredate <= '1/05/81'order by hiredate asc5.-muestra el nombre, el número de departamento de todos los empleados del departamento 10 y 30, ordénalos alfabéticamente por el nombre. guarda la consulta en el fichero p2q5.sql.soluci
12、243;n:select ename, deptnofrom empwhere deptno = 10 or deptno = 30order by ename asc6.-muestra el nombre y el salario de los empleados que ganen más de 1500$ y que estén en el departamento 10 o 30. etiqueta las columnas como empleado y salario mensual, respectivamente. guarda la consulta c
13、on el nombre p2q6.sqlsolución:select ename "empleado", sal "salario mensual" from empwhere sal > 1500 and (deptno = 10 or deptno = 30)order by ename7.-muestra el nombre y la fecha de contrato de todos los empleados que fueron contratados en 1982. guardar la consulta con e
14、l nombre p2q7.sql.solución:select ename, hiredate from empwhere hiredate like '%82'8.-muestra el nombre y el cargo de todos los empleados que no tengan jefes. guardar la consulta con el nombre p2q8.sql.solución:select ename, job from empwhere mgr is null9.-muestra el nombre, el sal
15、ario y la comisión de todos los empleados que ganan comisiones. ordena los datos descendentemente por el salario y las comisiones. guardar la consulta con el nombre p2q9.sql.solución:select ename, sal, comm from empwhere not comm is null10.-muestra el nombre de todos los empleados cuya ter
16、cera letra de sus nombres es una a. guardar la consulta con el nombre p2q10.sql.solución;select ename from empwhere ename like '_a%'11.-muestra el nombre de todos los empleados que tienen dos ls en su nombre y pertenecen al departamento 30 o su manager es 7782. guardar la consulta con e
17、l nombre p2q11.sql.solución:select ename from empwhere ename like '%l%l%'12.-muestra el nombre, el cargo y el salario de todos los empleados cuyo cargo sea clerk o analyst y su salario no sea igual a 1000$, 3000$ o 5000$. guardar la consulta con el nombre p2q12.sql.solución:select
18、ename, job, sal from empwhere job='clerk' or job='analyst' and not sal in(1000,3000,5000)tema31.-escribir una consulta que muestre la fecha actual. etiqueta la columna como fecha.solución:select sysdate fechafrom emp2.-mostrar el número de empleado, el nombre, el salario y
19、el salario incrementado en un 15% expresado como un número entero. etiqueta la columna como nuevo salario.solución:select empno, ename, round(sal+(sal*15/100) "nuevo salario"from emp3.-modifica la consulta anterior y añade una columna adicional que reste el salario anterior
20、del salario nuevo.solución:select empno, ename, round(sal+(sal*15/100) "nuevo salario", round(sal+(sal*15/100)- sal aumentofrom emp4.-muestra el nombre de empleado, la fecha de contrato y la fecha de revisión del salario, que será el primer lunes después de los seis mes
21、es de haber sido contratado. etiqueta la columna como revisión. formatea las fechas para que a parezcan de la forma.”domingo, 8 de septiembre de 1981”.solución:select ename, hiredate, to_char(next_day(add_months(hiredate,6),'lunes'), 'day, dd "de" month "de"
22、 yyyy') revisión from emp5.-para cada empleado mostrar el nombre de empleado y calcula el número de meses entre hoy y la fecha en la cual el empleado fue contratado. etiqueta la columna months_worked. ordena los resultados por el número de meses que llevan empleados. redondear hac
23、ia arriba (hacia el número entero superior) el número de meses obtenido.solución:select ename, round(sysdate - hiredate)/31) months_work from emporder by months_work desc6.-escribe una consulta que produzca lo siguiente para cada empleado: el nombre concatenado a “gana” y al salario y
24、 a “mensualmente pero quiere ganar” <salario>. etiquetar la columna como “salario soñado”.solución:select ename |' gana '|sal|' mensualmente pero quiere ganar '|sal*2 as "salario soñado"from emp7.-crear una consulta para mostrar el nombre y el salario d
25、e todos los empleados. formatea el salario para que tenga una longitud de 15 caracteres. rellena los espacios en blanco con el signo del dólar y etiqueta la columna como salario.solución:select ename,lpad(sal,15,'$') salariofrom emp8.- escribe una consulta que permita mostrar el no
26、mbre de empleado con la primera letra en mayúscula y todas las otras en minúscula. mostrar también la longitud de sus nombres para todos los empleados cuyo nombre comience por j, a o m.solución:select initcap(ename) "nombres", length(ename) "longitud"from emp
27、where ename like 'a%' or ename like 'm%'or ename like 'j%'9.- mostrar el nombre, la fecha de contrato y el día de la semana en el cual cada empleado fue contratado. ordena los resultados por el día de la semana.solución:select ename, hiredate, to_char (hiredate
28、,'day') "dia contratado"from emporder by "dia contratado" desc10.-crear una consulta que muestre el nombre de empleado y la comisión de cada uno de ellos. si el empleado no gana comisión, pon en la salida “sin comisión”. etiqueta la columna con el nombre “c
29、omisión recibida”.solución:select ename, nvl(to_char(comm),'sin comision') "comisiones"from emptema 41.- escribir una consulta para mostrar el nombre, el número de departamento y el nombre de departamento para todos los empleados.solución:select emp.ename,emp.de
30、ptno, dept.dnamefrom emp,deptwhere emp.deptno=dept.deptno2.- escribir una consulta que muestre los diferentes trabajos y la localización del departamento 30.solución:select emp.job,dept.locfrom emp, deptwhere emp.deptno=dept.deptno and emp.deptno=30group by emp.job, dept.loc3.- escribir un
31、a consulta para mostrar el nombre de empleado, el nombre de departamento y la localización de todos los empleados que ganan una comisión.solución:select emp.ename,dept.dname,dept.locfrom emp, deptwhere emp.deptno=dept.deptno and not m is null4.- mostrar el nombre de empleado y el nomb
32、re de departamento de todos los empleados que tienen una “a” en sus nombres.solución:select emp.ename, dept.dnamefrom emp, deptwhere emp.deptno=dept.deptno and emp.ename like '%a%'5.- escribir una consulta para mostrar el nombre, el cargo, el número de departamento y el nombre del
33、departamento de todos los empleados que trabajen en dallas.solución:select emp.ename, emp.job, dept.deptno, dept.dnamefrom emp, deptwhere emp.deptno=dept.deptno and dept.loc='dallas'6.- mostrar el nombre de empleado, el número de empleado, el nombre del manager de cada empleado y e
34、l número de jefe de su empleado, de todos los trabajadores de la tabla emp.solución:select trabajador.ename "trabajador", trabajador.empno "nº trabajador", jefe.ename "jefe", trabajador.mgr "nº jefe"from emp trabajador, emp jefewhere trabaj
35、ador.mgr=jefe.empno7.- modifica el ejercicio anterior para mostrar todos los empleados incluyendo a aquellos que no tengan jefe.solución:select trabajador.ename "trabajador", trabajador.empno "nº trabajador", jefe.ename "jefe", trabajador.mgr "nº jef
36、e"from emp trabajador, emp jefewhere trabajador.mgr=jefe.empno or jefe.mgr is null8.- crear una consulta para mostrar el nombre de empleado, el número de departamento y todos los empleados que trabajen en el mismo departamento, para cada uno de los empleados existentes en la tabla emp.solu
37、ción:select emp.ename,dept.deptnofrom emp,deptwhere emp.deptno=dept.deptno order by dept.dname9.- crear una consulta para mostrar el nombre de empleado, el cargo, el nombre de departamento el salario y el grado del salario para todos los empleados de la tabla emp.solución:select emp.ename,
38、 emp.job, dept.dname,emp.sal,salgrade.gradefrom emp,dept,salgradewhere emp.deptno=dept.deptno and (emp.sal between salgrade.losal and salgrade.hisal)order by salgrade.grade desc10.- crear una consulta para mostrar el nombre y la fecha de contrato de cualquier empleado que haya sido contratado despu&
39、#233;s de blake.solución:select fpos.ename,fpos.hiredatefrom emp fant,emp fposwhere fant.ename='blake' and fant.hiredate <= fpos.hiredateorder by fpos.hiredate11- crear una consulta para mostrar el nombre de empleado concatenado con la representación de su salario que será
40、simbolizado a través del carácter *. por cada 100 dólares que gane cada trabajador se ha de mostrar un *. dale a la columna obtenida el nombre “empleados y salarios”.solución:select ename|' '|lpad('*',sal/100,'*') "empleados y salario"from emptem
41、a51.- mostrar el máximo, el mínimo, el sumatorio y la media del salario de todos los empleados. etiqueta las columnas como máximo, mínimo, sumatorio y promedio, respectivamente. redondea los resultados.solución:select max(sal) maximo, min (sal) minimo, round(sum(sal) suma ,
42、round(avg(sal) promediofrom emp2.- modifica el ejercicio anterior para que muestre el mínimo, el máximo, la suma y la media del salario para cada tipo de trabajo.solucion:select job,max(sal) maximo, min (sal) minimo, round(sum(sal) suma , round(avg(sal) promediofrom empgroup by job3.- escr
43、ibir una consulta para mostrar el número de trabajadores con el mismo trabajosolución:select job,count(job) "nº de trabajadores"from empgroup by job4.- determinar el número de jefes que hay en la tabla emp. nombre la columna como “número de jefes”.solucion:select c
44、ount(*) "nº de jefes"from emp where empno in (select mgr from emp)5.- escribe una consulta que permita mostrar la diferencia entre el mayor y el menor de los salarios. etiqueta la columna como “diferencia de salarios”.solución:select (max(sal) - min(sal) "diferencia salarios
45、"from emp6.- mostrar el número de manager y el salario de los empleados peor pagados para cada manager. excluye a todos los empleados cuyo manager id no sea conocido. excluye cualquier grupo en el cual el salario mínimo sea menor de 1000. ordena los datos por la columna salario en ord
46、en descendente.solución:select mgr jefe, min(sal) salario_minimofrom empwhere mgr not like ' 'having min(sal) >= 1000group by mgr7.- escribe una consulta que muestre el nombre de departamento, la localización, el número de empleados y la media del salario de todos los emple
47、ados de cada departamento. etiqueta las columnas con un nombre descriptivo.solución:select dept.dname "nombre departamento", dept.loc "ciudad", count(emp.empno) "nº de empleados", round(avg(sal) "media de salario"from dept,empwhere emp.deptno=dept.de
48、ptnogroup by dept.dname, dept.loc8.- crear una consulta para mostrar el número total de empleados y de ese total se desea saber cuales fueron contratados en 1980, 1981, 1982 y 1983. etiqueta las columnas con un nombre descriptivo.solución:select count(empno) total, count(decode(to_char(hir
49、edate,'yyyy'),'1980',count(to_char(hiredate,'yyyy')"1980", count(decode(to_char(hiredate,'yyyy'),'1981',count(to_char(hiredate,'yyyy') "1981",count(decode(to_char(hiredate,'yyyy'),'1982',count(to_char(hiredate,'y
50、yyy') "1982",count(decode(to_char(hiredate,'yyyy'),'1983',count(to_char(hiredate,'yyyy') "1983"from empgroup by hiredate,empno9.- crear una consulta que muestre los diferentes cargos que existen en la empresa. además para cada cargo se desea saber
51、 la suma de todos los salarios para los departamentos 10, 20 y 30.solución:select job, sum(decode(deptno,'10',sal,0) detp10, sum(decode(deptno,'20',sal,0) detp20, sum(decode(deptno,'30',sal,0) detp30, sum(decode(job,'salesman',sal,0, job,'clerk',sal,0, jo
52、b,'president',sal,0, job,'manager',sal,0, job,'analyst',sal,0) total from empgroup by jobtema 61.- escribe una consulta que muestre el nombre de empleado y la fecha de contrato de todos los empleados que trabajen en el mismo departamento que blake. excluye a blake.solució
53、;n:select ename,hiredatefrom empwhere deptno=(select emp.deptno from emp where emp.ename='blake') and ename <>(select ename from emp where ename='blake')2.- crear una consulta para mostrar el número de empleado y el nombre de todos los empleados que ganan más que la m
54、edia del salario. ordena los resultados en orden descendente por el campo salario.solución:select empno, ename, salfrom empwhere sal > (select round(avg(sal) from emp)order by sal desc3.- escribe una consulta que permita mostrar el número de empleado y el nombre de todos los empleados q
55、ue trabajan en un departamento con empleados cuyo nombre contenga una t.solución:select empno, enamefrom empwhere ename like '%t%'4.- muestra el numero de empleado, el nombre, el número de departamento y el cargo de todos los empleados que trabajan en dallas.solución:select em
56、p.empno,emp.ename,dept.deptno,emp.jobfrom emp,deptwhere dept.deptno=emp.deptno and dept.loc=(select loc from dept where loc='dallas')5.- muestra el nombre de empleado y el salario de todos los empleados que sean subordinados directos de kingsolución:select ename,salfrom empwhere mgr=(se
57、lect empno from emp where ename='king')6.- mostrar el número de departamento, el nombre, y el cargo de todos los empleados que trabajan en el departamento sales.solución:select emp.deptno,emp.ename,emp.salfrom emp,deptwhere dept.deptno=emp.deptno and dept.dname=(select dname from d
58、ept where dname='sales')tema 71.- escribe una consulta para mostrar el nombre, el número de departamento, y el salario de cualquier empleado cuyo número de departamento y el salario coincidan ambos con el número de departamento y el salario de cualquiera de los empleados que g
59、anan una comisión.solución:select ename, deptno, salfrom emp where (deptno, sal) in (select deptno, sal from emp where not comm is null)2.- mostrar el nombre de empleado, el nombre del departamento y el salario de cualquier empleado cuyo salario y la comisión coincidan ambos con el salario y la comisión de cualquiera de los empleados que trabajan en dallassolución:select e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论