Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

Taller de consultas oracle

Realizar las siguientes consultas en el esquema HR de Oracle

1) Listar todos los empleados, los países, departamentos de la empresa.


INNER JOIN departments ON employees.department_id = departments.department_id
INNER JOIN locations ON departments.location_id = locations.location_id
INNER JOIN countries ON locations.country_id = countries.country_id;

2) Mostrar el listado de los empleados que ingresaron a la empresa antes de junio de 2006
Select * from employees where hire_date < '2006-06-01';

3) Listar los nombres de los empleados del departamento de ventas.


SELECT first_name FROM employees INNER JOIN departments ON
employees.department_id=departments.department_id where
departments.department_name="Sales";
4) Listar los empleados que tengan la letra j en sus apellidos y trabajen en América
SELECT DISTINCT first_name,last_name FROM employees INNER JOIN jobs ON
employees.job_id=jobs.job_id INNER JOIN job_history ON jobs.job_id=job_history.job_id INNER
JOIN departments ON job_history.department_id=departments.department_id INNER JOIN
locations ON departments.location_id=locations.location_id INNER JOIN countries ON
locations.country_id=countries.country_id INNER JOIN regions ON
countries.region_id=regions.region_id where regions.region_name = "Americas" AND
employees.last_name LIKE '%j%'
5) Listar empleados trabajen en recursos humanos.
SELECT * FROM employees
INNER JOIN jobs ON employees.job_id = jobs.job_id
WHERE jobs.job_title = "Human Resources Representative";

6) Listar empleados que trabajen en ventas cuyo sueldo sea mayor que 5000
select first_name, last_name from employees INNER JOIN departments ON
employees.department_id=departments.department_id WHERE
departments.department_name ="Sales" AND employees.salary > 5000
7) Listar empleados que ganen entre 5000 y 8000 en Alemania.
SELECT * FROM employees
INNER JOIN departments
ON employees.department_id=departments.department_id INNER JOIN locations ON
departments.location_id=locations.location_id INNER JOIN countries ON
locations.country_id=countries.country_id where employees.salary BETWEEN 5000 AND 6000
AND countries.country_name = "Germany";

8) Listar empleados que trabajan en la empresa en Europa.


SELECT * FROM employees INNER JOIN jobs ON employees.job_id=jobs.job_id INNER JOIN job_
history ON jobs.job_id=job_history.job_id INNER JOIN departments ON job_history.department
_id=departments.department_id INNER JOIN locations ON departments.location_id=locations.l
ocation_id INNER JOIN countries ON locations.country_id=countries.country_id INNER JOIN regi
ons ON countries.region_id=regions.region_id where regions.region_name = "Europe"
9) Listar nombres y apellidos de los empleados que no tienen comisión.
SELECT first_name,last_name FROM employees where commission_pct IS NULL;

10) Listar nombres y apellidos de empleados cuya comisión sea mayor al 0.5 y trabajen en
ASIA
SELECT * FROM employees INNER JOIN jobs ON employees.job_id=jobs.job_id INNER JOIN
job_history ON jobs.job_id=job_history.job_id INNER JOIN departments ON
job_history.department_id=departments.department_id INNER JOIN locations ON
departments.location_id=locations.location_id INNER JOIN countries ON
locations.country_id=countries.country_id INNER JOIN regions ON
countries.region_id=regions.region_id where regions.region_name = "Asia" AND
commission_pct > 0.2;

11) Listar empleados cuyo apellido empiece por k.


SELECT * from employees WHERE last_name LIKE 'k%'

13) Listar empleados cuyo apellido termine en L y salario sea menor de 8000
SELECT * from employees WHERE last_name LIKE '%L' AND salary < 8000
14) Listar empleados que tengan salario entre 5000 y menor a 8000.
SELECT * from employees WHERE salary BETWEEN 5000 AND 8000;
15) Listar empleados de Argentina
SELECT * FROM employees
INNER JOIN departments ON employees.department_id = departments.department_id
INNER JOIN locations ON departments.location_id = locations.location_id
INNER JOIN countries ON locations.country_id = countries.country_id
WHERE countries.country_name = "Argentina";

You might also like