Publicado el 2 de Octubre del 2018
605 visualizaciones desde el 2 de Octubre del 2018
712,1 KB
9 paginas
Creado hace 6a (09/04/2017)
U N I V E R S I D A D D E E L S A LVA D O R
FA C U LTA D D E I N G E N I E R I A Y A R Q U I T E C T U R A
E S C U E L A D E I N G E N I E R I A D E S I S T E M A S
I N F O R M A T I C O S
Ciclo
I
Base de Datos BAD115
Catedráticos: Ing. Elmer Arturo Carballo Ruiz MSc.
Ing. César Augusto González Rodríguez MAF.
Guía de Laboratorio #6a
Lenguaje estructurado de Consulta SQL
Contenido
Objetivos .................................................................................................................................. 1
Introducción ............................................................................................................................. 1
Desarrollo. ................................................................................................................................ 2
Subconsultas de Solo una Fila ................................................................................................. 2
Subconsultas de Múltiples Filas .............................................................................................. 2
Subconsultas Correlacionadas ................................................................................................ 3
Subconsultas Escalares........................................................................................................... 4
Subconsulta Escalar en la Cláusula SELECT............................................................................... 4
Subconsultas Escalares en las Cláusulas SELECT y WHERE......................................................... 5
Subconsultas Escalares en la Cláusula ORDER BY ..................................................................... 6
Múltiples Columnas en una Subconsulta ................................................................................. 6
Universidad de El Salvador
BAD-115
Guía de Laboratorio #6
Objetivos
Que el estudiante sea capaz de:
Realizar las operaciones básicas de consulta en SQL sobre Oracle utilizando tablas.
Utilizar las formas de subconsultas.
Introducción
En esta guía se veremos cómo realizar consultas de una y múltiples filas,
correlacionadas y escalares.
Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF
Ciclo II-2012
1
Universidad de El Salvador
BAD-115
Guía de Laboratorio #6
Desarrollo.
Subconsultas de Solo una Fila
Cambie el formato de fecha a DD-Mon-YYYY
Script: alter session set nls_date_format='DD-Mon-YYYY';
a) Muestre los empleados cuyo salario es mayor al promedio
Script: select last_name, first_name, salary from employees where salary = (select max(salary) from
employees);
Subconsultas de Múltiples Filas
b) Muestre los empleados y el departamento a que pertenecen si en él trabaja alguien
llamado John.
Script: select last_name, first_name, department_i d from employees where department_i d in ( select
department_id from employees where first_name = 'John' );
Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF
Ciclo II-2012
2
Universidad de El Salvador
BAD-115
Guía de Laboratorio #6
Subconsultas Correlacionadas
c) Mostrar los empleados que ganan mas en cada departamento.
Script: select department_i d, last_name, salary
max(salary) from employees e2 where e1.departme nt_i d = e2.department_i d );
from employees e1 where salary = ( select
Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF
Ciclo II-2012
3
Universidad de El Salvador
BAD-115
Guía de Laboratorio #6
Subconsultas Escalares
Retornan exactamente una columna y una sola fila.
Subconsulta Escalar en una Expresión CASE
d) Listar las ciudades, su código de país, y si es de la India ó no.
Script: select city, country_id,
( case when country_id in ( select country_id
from countries
where country_name = 'India' ) then 'Indian'
from locations where city like 'B% ';
else 'Non-Indian'
end) as "India?"
Subconsulta Escalar en la Cláusula SELECT
e) Mostrar los numeros y nombres de los departamentos con el salario maximo que perciben sus
empleados.
Script: select department_i d, department_name, ( select max(salary) from employees e
where e.department_i d = d.department_i d ) as "Salario Maximo" from departments d;
Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF
Ciclo II-2012
4
Universidad de El Salvador
BAD-115
Guía de Laboratorio #6
Subconsultas Escalares en las Cláusulas SELECT y WHERE
f) Listar los nombres de los departamentos y el nombre de sus jefes para todos los
departamentos que están en Estados Unidos (United States of America) y Canadá
(Canada).
Script: select department_name, manager_id, ( Select last_name from employees e where
e.employee_id = d.manager_id) as mgr_name from departments d where ( (select country_id from
locations l where d.location_id = l.location_id) in (select country_id from countries c where
c.country_name = 'United States of America' or c.country_name = 'Canada') ) and d.manager_id is
not null;
Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF
Ciclo II-2012
5
Universidad de El Salvador
BAD-115
Guía de Laboratorio #6
Subconsultas Escalares en la Cláusula ORDER BY
g) Listar los nombres de las ciudades y ordenarlos por sus respectivos nombres de
país.
Script: select country_id, city, state_province from locations l order by (select country_name
from countries c where l.country_id = c.country_id);
Múltiples Columnas en una Subconsulta
Consideremos las siguientes tablas.
Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF
Ciclo II-2012
6
Universidad de El Salvador
BAD-115
Guía de Laboratorio #6
State
CNT_Code
ST_Code
ST_Name
1
1
91
1
91
TX
CA
TN
TN
KL
TEXAS
CALIFORNIA
TAMIL NADU
TENNESSE
KERALA
City
CNT_Code
1
91
1
ST_Code
CTY_Code
CTY_Name
TX
TN
CA
1001
2243
Dallas
Madras
8099
Los Angeles
h) Listar todas las ciudades ubicadas en Texas.
Script: Select Sty_Name From City Where (Cnt_Code, St_Code) In ( Select Cnt_Code, St_Code
From State where st_name = 'TEXAS' );
Nota: Deberá crear las tablas e insertar los datos que se requieran.
Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF
Ciclo II-2012
7
Comentarios de: Lenguaje estructurado de Consulta SQL #6a (0)
No hay comentarios