Documentos de Académico
Documentos de Profesional
Documentos de Cultura
z051 08 110328224409 Phpapp02
z051 08 110328224409 Phpapp02
SQL FUNDAMENTALS I
SUBCONSULTA
Es una consulta anidad, es disenar y ejecutar otra consulta SQL dentro de una primer consulta. Partes donde podemos colocar sub consultas:
COLUMNA DE SELECT y FROM y WHERE y HAVING
y y
SELECT sysdate Hoy, (select count(*) from departments) Dept_count, (select count(*) from employees) Emp_Count FROM dual;
SELECT last_name from employees WHERE employee_id in (select manager_id from employees);
EJERCICIO
Escriba una consulta que identifique el mayor salario de un empleado para un pais, utilice subconsulta en la clausula FROM
Select max(salary), country_id from y ( Select salary, department_id, location_id, country_id from employees natural join departments natural join locations) y Group by country_id
y
EJERCICIO
Mostrar todos los departamentos que tienen actualmente uno o mas empleados asignados.
Select department_name from departments where department_id in (select distinct department_id from employees); y Select department_name from departments d inner join employees e on e.department_id=d.department_id group by department_name
y
Se recomienda asegurarse que las subconsultas no devuelvan valores nulos. Recuerde que el distinct NO QUITA LOS VALORES NULOS
Insert into sales_hist (select * from sales where date>sysdate); Delete from departments where department_id not in (select department_id from employees) Una subconsulta puede ser usada para seleccionar filas para insercion, pero NO en la clausula VALUES de insert
EJERCICIO
Escriba una consulta que identifique todos los empleados que trabajan en un departamento ubicado en reino unido. (United Kingdom) Escriba una consulta para identificar todos los empleados que ganan mas que el promedio, y que trabajan en departamentos cuyo nombre inicia con IT
Las consultas SINGLE ROW, devuelven una sola tupla, las consultas escalar devuelven una sola tupla y una sola columna Operadores para consultas SINGLE ROW
= y >= y <= y !=
y
SELECT last_name from employees WHERE salary < (select avg(salary) from employees); SELECT p.last_name, p.department_id FROM employees p where p.salary < (select avg(s.salary) from employees s where s.department_id=p.department_id);
EJECUTE:
Select last_name from employees where salary > (select salary from employees where last_name=Tobias) order by last_name; Select last_name from employees where salary > (select salary from employees where last_name=Taylor) order by last_name; Select last_name from employees where salary > ALL (select salary from employees where last_name=Taylor) order by last_name;
EJERCICIO
SELECT job_title FROM jobs NATURAL JOIN employees GROUP BY job_title HAVING avg(salary) = (Select max(avg(salary)) from employees group by job_id) ;
EJERCICIO
Realice una consulta que muestre los apellidos de los empleados que trabajan en un departamento dado, el nombre del departamento ser solicitado al usuario.
y
Select last_name from employees where department_id = (select department_id from departments where department_name = %&depto%) ;
Hoy instalare y digitare muchas frases del programa tecleo, pues mis compaeros necesitan mi ayuda y colaboracin.