PDF de programación - Lenguaje estructurado de Consulta SQL #5a

Imágen de pdf Lenguaje estructurado de Consulta SQL #5a

Lenguaje estructurado de Consulta SQL #5agráfica de visualizaciones

Publicado el 2 de Octubre del 2018
251 visualizaciones desde el 2 de Octubre del 2018
1,0 MB
20 paginas
Creado hace 2a (04/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 #5a

Lenguaje estructurado de Consulta SQL





Contenido
Objetivos .................................................................................................................................. 1

Introducción ............................................................................................................................. 1

Desarrollo. ................................................................................................................................ 2

Consultas Multitablas ................................................................................................................ 2

Consultas Simples .................................................................................................................. 2

Consultas Complejas .............................................................................................................. 3

Uso de Alias .......................................................................................................................... 3

NATURAL JOIN....................................................................................................................... 4

JOIN . . . USING ...................................................................................................................... 7

Producto Cartesiano .............................................................................................................. 9

Combinaciones Externas ........................................................................................................ 9

Left Outer Joins ....................................................................................................................10

Right Outer Join....................................................................................................................11

Full Outer Join ......................................................................................................................11

Otras Consultas Multitablas ......................................................................................................12

Autoreferenciadas (Self-joins) ...............................................................................................12

Operadores de Conjuntos .....................................................................................................13

Clausula WITH ......................................................................................................................16



Universidad de El Salvador

BAD-115

Guía de Laboratorio #5

Objetivos
Que el estudiante sea capaz de:

 Realizar las operaciones de consulta en SQL sobre Oracle utilizando una o más tablas.
 Utilizar consultas simples, complejas, de unión(joins), autoreferenciadas, con cláusula

with, de conjunto, etc.



Introducción


En esta guía veremos cómo escribir sentencias SELECT para acceder a los datos
de dos o más tablas usando equality y non-equality joins (combinaciones por igualdad y
por desigualdad). Visualizar datos que no se cumplirían normalmente con una condición
de join, outer joins (uniones externas), combinaciones (self-Joins) de una tabla consigo
misma, consultas con cláusula with, de conjunto, etc..



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 #5

Desarrollo.

Consultas Multitablas


¿Qué es un Join?

Un Join es usado para consultar datos desde más de una tabla. Las filas se combinan
(joined) relacionando valores comunes, típicamente valores de primary key y foreign key.



Métodos de Join:






Equijoin
Non-equijoin
Outer join
Self join



Consultas Simples

a) Consultar los países por región.

Script: select regions.region_id, region_name, country_name from regions, countries where

regions.region_id = countries.region_id;

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 #5



Consultas Complejas



b) Consultar los departamentos que se encuentran fuera de EEUU, y su respectiva

ciudad.

Script: select locations.location_id, city, department_name from locations, departments where
(locations.location_id = departme nts.loc ation_i d) and (country_id != 'US');

Uso de Alias
Los alias simplifican la referencia a las columnas de las tablas que se utilizan en una
consulta.



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 #5

c) Consultar los países de Asia.

Script: select r.region_id, r.region_name, c.country_name from regions r, countries c where

(r.region_id = c.region_id) and (r.region_name = 'Asia');



Usando Sintaxis ANSI



<table name> NATURAL [INNER] JOIN <table name>

<table name> [INNER] JOIN <table name> USING (<columns>)

<table name> [INNER] JOIN <table name> ON <condition>



NATURAL JOIN


Se combinas está basada en todas las columnas con igual nombre entre ambas tablas.

No es necesario utilizar alias.

d) Mostrar los códigos de localización, ciudad, nombre del departamento de locations

y departments.

Script: select location_id, city, department_name from locations natural join departments;

Script2: select location_id, city, department_ name from departments natural join locations;

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 #5

El resultado en ambos casos es el mismo.

Las columnas comunes solo se muestran una vez en el conjunto de resultado.



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 #5

e) Mostrar los códigos de localización, ciudad, nombre del departamento de locations

y departments cuando los nombres de país Tengan la letra A al inicio.

Script: select * from regions natural join countries where country_name like 'A% ';

f) Mostrar las ciudades, pais y region a la que pertenecen.

Script: select region_name, country_name, city from regions natural join countries natural join

locations;



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 #5

JOIN . . . USING


Permite indicar las columnas a combinar entre dos tablas.



g) Mostrar los codigos de localizacion, nombre de ciudad y su respectivo departame nto, donde los

nombres de ciudad no posean la letra S de inicial.

Script: select location_id, city, department_name from locations join departments using (location_id)
where city not like 'S% ';

h) Mostrar las ciudades, pais y region a la que pertenecen, dentro de Estados Unidos(US).

Script: select region_name, country_name, city from regions join countries using(region_id) join
locations using(country_id) where country_id = 'US';



Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF

Ciclo II-2012

7

Universidad de El Salvador

BAD-115

Guía de Laboratorio #5



JOIN ... ON

La condición que permite combinar ambas tablas se debe especificar en la cláusula ON.



i) Mostrar las ciudades, pais y region a la que pertenecen, dentro de Estados Unidos(US).

Script: select region_name, country_name, city from regions r join countries c on

(r.region_id=c.region_id) join locations l on (c.country_id=l.countr y_id) where l.country_id = 'US';



Ing. Elmer Arturo Carballo Ruiz MSc. / Ing. Cesar Augusto González Rodríguez MAF

Ciclo II-2012



8

Universidad de El Salvador

BAD-115

Guía de Laboratorio #5

Producto Cartesiano


Si dos tablas en una consulta no tienen ninguna condición de combinación, entonces
Oracle vuelve su producto cartesiano. Oracle combina cada fila de una tabla con cada fila
de la otra tabla. Un producto cartesiano genera muchas filas y es siempre raramente útil.
Por ejemplo, el producto cartesiano de dos tablas, cada una con 100 filas, su resultado
seria una tabla de 10.000 filas.

j) Combine los datos de Regiones(4 filas) y Paises(25)

Script: select region_name, country_name from regions, countries;

Modifique el script anterior utilizando la sintaxis ANSI, el resultado será el mismo

Script2: select region_name, country_name from regions cross join countries;



Combinaciones Externas


Una combinación externa amplía el resultado de una combinación simple. Una
combinación externa devuelve todas las filas que satisfagan la condición de combinación
y también vuelve todos o parte de las filas de una tabla para la cual ninguna filas de la
otra satisfagan la condición de combinación.

k) Mostrar todos los países y ciudades de la tabla countries y locations cuando los

nombres de países empiecen con la letra A.

Script: select c.country_name, l.city from countries c, locations l where ( c.country_id = l.country_id
(+) )
  • Links de descarga
http://lwp-l.com/pdf13700

Comentarios de: Lenguaje estructurado de Consulta SQL #5a (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad