Diferencia entre revisiones de «Usuario:ManuelRomero/Img»

De WikiEducator
Saltar a: navegación, buscar
(Imagen de la solución de cada ejercicio)
(Imagen de la solución de cada ejercicio)
Línea 1: Línea 1:
 
===Imagen de la solución de cada ejercicio ===
 
===Imagen de la solución de cada ejercicio ===
 
;Ejercicio 1
 
;Ejercicio 1
 +
Obtener el nombre y  salarios  de todos
 +
los empleados que cobren más de 5000 euros
 +
y su nombre tenga contenga la letra a.
 +
 +
<!--source lang=sql>
 +
select first_name, salary
 +
from employees
 +
where salary > 5000
 +
    and last_name  like '%a%'
 +
</source -->
 +
 
[[Archivo:ex_1.png]]
 
[[Archivo:ex_1.png]]
 
<br />
 
<br />
 
;Ejercicio 2
 
;Ejercicio 2
 +
Haz una consulta para visualizar
 +
los puestos de los departamentos
 +
10 y 20. 
 +
<!--source lang=sql>
 +
select job_id
 +
from employees
 +
where DEPARTMENT_ID in (10,20)
 +
</source-->
 
[[Archivo:ex_22.png]]
 
[[Archivo:ex_22.png]]
 
<br />
 
<br />
 
;Ejercicio 3
 
;Ejercicio 3
[[Archivo:ex_33.png]]
+
Muestre los empleados cuyo apellido
 +
empiece por las letras "J", "K",
 +
"L" o "M".
 +
<!--source lang=sql>
 +
select last_name
 +
from employees
 +
where substr(last_name,0,1) in ('J','L','M','K')
 +
</source-->
 +
[[Archivo:ex_333.png]]
 
<br />
 
<br />
 
;Ejercicio 4
 
;Ejercicio 4
 +
Obtener todos los trabajos realizados ,
 +
que están en la tabla  job_history,
 +
que se hayan realizado durante más de
 +
2 años
 +
<!--source lang=sql>
 +
select job_id, trunc((end_date - start_date)/365) as "periodo trabajado"
 +
from job_history
 +
where (end_date - start_date)/365 > 2
 +
</source-->
 
[[Archivo:ex_4.png]]
 
[[Archivo:ex_4.png]]
 
<br />
 
<br />
 
;Ejercicio 5
 
;Ejercicio 5
 +
Obtener el nombre y salario de todos
 +
los empleados que cobren mas de
 +
1200 dólares.
 +
<!--source lang=sql>
 +
select first_name , salary
 +
from employees
 +
where salary > 1200
 +
</source-->
 
[[Archivo:ex_5.png]]
 
[[Archivo:ex_5.png]]
 
<br />
 
<br />
 
;Ejercicio 6
 
;Ejercicio 6
 +
Obtener el nombre y edad
 +
de todos los empleados
 +
<!--source lang=sql>
 +
select first_name, trunc((sysdate-hire_date)/365) as "Años trabajados"
 +
from employees
 +
</source-->
 
[[Archivo:ex_6.png]]
 
[[Archivo:ex_6.png]]
 
<br />
 
<br />
 
;Ejercicio 7
 
;Ejercicio 7
 +
Obtener el nombre y apellido de
 +
todos los empleados que su
 +
apellido acabe por  una vocal.
 +
<!--source lang=sql>
 +
select  first_name,lower(substr(last_name,-1,1))
 +
from employees
 +
where lower(substr(first_name,-1,1)) in ('a','e','i' ,'o','u')
 +
</source-->
 
[[Archivo:ex_7.png]]
 
[[Archivo:ex_7.png]]
 
<br />
 
<br />
 
;Ejercicio 8
 
;Ejercicio 8
 +
El departamento de recursos humanos
 +
necesita obtener los datos de todos
 +
los oficinistas que se contrataron
 +
después del año 1997.
 +
<!--source lang=sql>
 +
select  *
 +
from employees
 +
where job_id ='ST_CLERK'
 +
and
 +
to_char(hire_date,'YYYY') > 1997
 +
</source-->
 
[[Archivo:ex_8.png]]
 
[[Archivo:ex_8.png]]
 
<br />
 
<br />
 
;Ejercicio 9
 
;Ejercicio 9
 +
Los tipos de trabajo que tengan más
 +
de 2000 euros de diferencia entre
 +
el sueldo mayor y el sueldo menor
 +
<!--source lang=sql>
 +
select job_title, (max_salary - min_salary) as diferencia
 +
from jobs
 +
where max_salary - min_salary > 2000
 +
 +
</source-->
 
[[Archivo:ex_9.png]]
 
[[Archivo:ex_9.png]]
 
<br />
 
<br />
 
;Ejercicio 10
 
;Ejercicio 10
 +
Se  quiere saber el nombre, trabajo,
 +
y salario de los empleados.
 +
Pero solo de aquellos empleados
 +
que reciben comisión
 +
<!--source lang=sql>
 +
select last_name, job_id , salary
 +
from employees
 +
where commission_pct is not null
 +
</source-->
 
[[Archivo:ex_10.png]]
 
[[Archivo:ex_10.png]]
 
<br />
 
<br />
 
;Ejercicio 11
 
;Ejercicio 11
 +
Se quiere saber los nombres y apellidos
 +
de los empleados, junto con el tiempo
 +
que dura sus contratos. De ese tiempo
 +
se quiere saber años completos realizados.
 +
<!--source lang=sql>
 +
 +
</source-->
 
[[Archivo:ex_11.png]]
 
[[Archivo:ex_11.png]]
 
<br />
 
<br />
 
;Ejercicio 12
 
;Ejercicio 12
 +
Se quiere obtener un informe
 +
con los oficinistas  (JOB_ID = 'ST_CLERK')
 +
que se contrataron después del año 1997
 +
<!--source lang=sql>
 +
select last_name, first_name
 +
from employees
 +
where job_id = 'ST_CLERK'
 +
and
 +
to_char(hire_date,'yyyy')> 1997
 +
</source-->
 
[[Archivo:ex_12.png]]
 
[[Archivo:ex_12.png]]
 
<br />
 
<br />
 
;Ejercicio 13
 
;Ejercicio 13
 +
Obtener todos los departamentos
 +
donde haya más de 4 trabajadores
 +
<!--.source lang=sql>
 +
from employees
 +
group by department_id
 +
having count(*)>2
 +
</source-->
 +
select department_id
 
[[Archivo:ex_13.png]]
 
[[Archivo:ex_13.png]]
 
<br />
 
<br />
 
;Ejercicio 14
 
;Ejercicio 14
 +
Completa la consulta anterior,
 +
solo para aquellos departamentos
 +
cuyo numero de identificador
 +
sea mayor que 50
 +
<!--source lang=sql>
 +
select department_id
 +
from employees
 +
where department_id > 50
 +
group by department_id
 +
having count(*)>2
 +
</source-->
 
[[Archivo:ex_14.png]]
 
[[Archivo:ex_14.png]]
 
<br />
 
<br />
 
;Ejercicio 15
 
;Ejercicio 15
 +
Obtener un listado con el nombre
 +
del departamento, número de empleados
 +
que tiene y salario medio
 +
que se cobra en ese departamentos
 +
<!--source lang=sql>
 +
select department_id, count(*)as "empleados", round(avg(salary)) as "salario medio"
 +
from employees
 +
where department_id is not null
 +
group by department_id
 +
 +
</source-->
 
[[Archivo:ex_15.png]]
 
[[Archivo:ex_15.png]]
 
<br />
 
<br />
 
;Ejercicio 16
 
;Ejercicio 16
 +
Mostrar los departamentos (número )
 +
en los que no haya ningún vendedor
 +
(vendedor queda identificado por
 +
el JOB_ID ‘SA_REP’
 +
<!--source lang=sql>
 +
select department_id
 +
from employees
 +
where department_id not in (select department_id
 +
                            from employees 
 +
                            where job_id = 'SA_REP'
 +
                            and department_id is not null)
 +
</source-->
 
[[Archivo:ex_16.png]]
 
[[Archivo:ex_16.png]]
 
<br />
 
<br />
 
;Ejercicio 18
 
;Ejercicio 18
[[Archivo:ex_18.png]]
+
Obtener los departamentos en los que no haya
 +
ningún empleado trabajando como vendedor.
 +
Se desea ver el número y nombre de departamento,
 +
así como la ubicación.
 +
El trabajo de vendedor viene especificado
 +
con el job_id SA_REP
 +
<!--source lang=sql>
 +
select d.department_id, department_name, location_id
 +
from employees e , DEPARTMENTS d
 +
where e.department_id = d.department_id
 +
and
 +
      e.department_id not in (select department_id
 +
                            from employees 
 +
 
 +
                            where job_id = 'SA_REP'
 +
                            and department_id is not null)
 +
</source-->
 +
[[Archivo:ex_18b.png]]
 
<br />
 
<br />

Revisión de 04:33 23 may 2018

Imagen de la solución de cada ejercicio

Ejercicio 1
Obtener el nombre y  salarios  de todos 
los empleados que cobren más de 5000 euros
y su nombre tenga contenga la letra a.


Ex 1.png

Ejercicio 2
Haz una consulta para visualizar 
los puestos de los departamentos 
10 y 20.  

Ex 22.png

Ejercicio 3
Muestre los empleados cuyo apellido
empiece por las letras "J", "K",
"L" o "M".

Ex 333.png

Ejercicio 4
Obtener todos los trabajos realizados , 
que están en la tabla  job_history, 
que se hayan realizado durante más de 
2 años

Ex 4.png

Ejercicio 5
Obtener el nombre y salario de todos 
los empleados que cobren mas de 
1200 dólares.

Ex 5.png

Ejercicio 6
Obtener el nombre y edad
de todos los empleados

Ex 6.png

Ejercicio 7
Obtener el nombre y apellido de
todos los empleados que su
apellido acabe por  una vocal.

Ex 7.png

Ejercicio 8
El departamento de recursos humanos
necesita obtener los datos de todos 
los oficinistas que se contrataron 
después del año 1997.

Ex 8.png

Ejercicio 9
Los tipos de trabajo que tengan más
de 2000 euros de diferencia entre
el sueldo mayor y el sueldo menor

Ex 9.png

Ejercicio 10
Se  quiere saber el nombre, trabajo, 
y salario de los empleados. 
Pero solo de aquellos empleados 
que reciben comisión 

Ex 10.png

Ejercicio 11
Se quiere saber los nombres y apellidos
de los empleados, junto con el tiempo
que dura sus contratos. De ese tiempo
se quiere saber años completos realizados. 

Ex 11.png

Ejercicio 12
Se quiere obtener un informe
con los oficinistas  (JOB_ID = 'ST_CLERK')
que se contrataron después del año 1997

Ex 12.png

Ejercicio 13
Obtener todos los departamentos 
donde haya más de 4 trabajadores

select department_id Ex 13.png

Ejercicio 14
Completa la consulta anterior, 
solo para aquellos departamentos 
cuyo numero de identificador 
sea mayor que 50

Ex 14.png

Ejercicio 15
Obtener un listado con el nombre
del departamento, número de empleados 
que tiene y salario medio
que se cobra en ese departamentos

Ex 15.png

Ejercicio 16
Mostrar los departamentos (número )
en los que no haya ningún vendedor 
(vendedor queda identificado por 
el JOB_ID ‘SA_REP’

Ex 16.png

Ejercicio 18
Obtener los departamentos en los que no haya
ningún empleado trabajando como vendedor.
Se desea ver el número y nombre de departamento, 
así como la ubicación.
El trabajo de vendedor viene especificado 
con el job_id SA_REP

Ex 18b.png