Anda di halaman 1dari 11

Universidad nacional de san Agustn

SENTENCIAS
SQL JOIN ESCUELA PROFESIONAL DE
INGENIERA INDUSTRIAL

ING.EDWIN ESTREMADOYRO ESCOBAR TECNOLOGA DE BASE DE


DATOS
INTEGRANTES

Albino ranilla deyssi diana


Mamani sumiri paola Lucila
Torres Jara Bryan Alonso
Sulli Karolina Salas
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

NDICE:
INTRODUCCIN: ............................................................................................................................ 2
SENTENCIAS SQL JOIN ................................................................................................................ 3
INNER JOIN (Combinacin interna) ........................................................................................... 3
OUTER JOIN (Combinacin externa ) ........................................................................................ 3
*LEFT JOIN ................................................................................................................................. 4
*LEFT OUT JOIN ......................................................................................................................... 5
* RIGHT JOIN ............................................................................................................................. 6
* RIGHT JOIN ............................................................................................................................. 6
CROSS JOIN (CRUZADA) ............................................................................................................. 7
Funcin ISNULL.......................................................................................................................... 7
EJERCICIOS APLICATIVOS............................................................................................................... 8
Ejercicio #1 ................................................................................................................................ 8
Ejercicio #2 ................................................................................................................................ 8
Ejercicio #3 ................................................................................................................................ 9

1
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

INTRODUCCIN:

El manejo del lenguaje SQL es un conocimiento fundamental para todo programador


moderno, ya que es la piedra angular sobre la que construiremos, sea cual sea el marco
de referencia, el acceso y persistencia de nuestros datos (entre otras muchas cosas).

en el presente trabajo, explicaremos todo lo referido a la sentencia SQL JOIN la cual nos
permite consultar datos de 2 o ms tablas.

Dichas tablas estarn relacionadas entre ellas de alguna forma, a travs de alguna de sus
columnas.

El propsito del JOIN es unir informacin de diferentes tablas, para no tener que repetir
datos en diferentes tablas.

as mismo, trataremos sobre los tipos de JOINS los cuales son: JOIN interno, JOIN externo
y JOIN cruzado.

El propsito del JOIN es unir informacin de diferentes tablas, para no tener que repetir
datos en diferentes tablas.

2
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

SENTENCIAS SQL JOIN


La sentencia JOIN (unir, combinar) de SQL permite combinar registros de una o ms tablas en
una base de datos relacional, es decir, consisten en crear combinaciones que permiten mostrar
columnas de diferentes tablas como si fuese una sola tabla, haciendo coincidir los valores de
las columnas relacionadas.

La operacin JOIN o combinacin permite mostrar columnas de varias tablas como si se tratase
de una sola tabla, combinando entre s los registros relacionados usando para ello claves
externas.

En el Lenguaje de Consultas Estructurado (SQL) hay tres tipos de JOIN: interno, externo
y cruzado.

El estndar ANSI del SQL especifica cinco tipos de JOIN: INNER, LEFT OUTER, RIGHT
OUTER, FULL OUTER y CROSS.

Una tabla puede unirse a s misma, produciendo una auto-combinacin, SELF-JOIN.

INNER JOIN (Combinacin interna)


Las combinaciones internas se realizan mediante la instruccin INNER JOIN. Devuelven
nicamente aquellos registros/filas que tienen valores idnticos en los dos campos que
se comparan para unir ambas tablas. Es decir aquellas que tienen elementos en las dos
tablas, identificados stos por el campo de relacin.

SINTAXIS

SELECT column_name(s)

FROM table1

INNER JOIN table2

ON table1.column_name=table2.column_name

OUTER JOIN (Combinacin externa )


Mediante esta operacin no se requiere que un registro en una tabla tenga un registro
relacionado en la otra tabla. El registro es mantenido en la tabla combinada aunque no
exista el correspondiente en la otra tabla.

3
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

Existen tres tipos de combinaciones externas, el Left Join, el Right Join y el Full Join,
donde se toman todos los registros de la tabla de la izquierda, o todos los de la tabla
derecha, o todos los registros respectivamente.

*LEFT JOIN
El resultado de esta operacin siempre contiene todos los registros de la tabla de la
izquierda (la primera tabla que se menciona en la consulta), independientemente de si
existe un registro correspondiente en la tabla de la derecha.

La sentencia LEFT JOIN retorna la pareja de todos los valores de la tabla izquierda con
los valores de la tabla de la derecha correspondientes, si los hay, o retorna un valor
nulo NULL en los campos de la tabla derecha cuando no haya correspondencia.

SINTAXIS

SELECT column_name(s)

FROM table1

LEFT JOIN table2

4
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

ON table1.column_name=table2.column_name

*LEFT OUT JOIN


Existe una variacin de la sentencia LEFT JOIN, esta es la sentencia LEFT OUT JOIN

Esta sentencia excluye la interseccin entre las tablas

Su sintaxis es la siguiente:

SELECT column_name(s)

FROM table1

LEFT OUTER JOIN table2

ON table1.column_name=table2.column_name

5
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

* RIGHT JOIN
Esta operacin es una imagen refleja de la anterior; el resultado de esta operacin
siempre contiene todos los registros de la tabla de la derecha (la segunda tabla que se
menciona en la consulta), independientemente de si existe o no un registro
correspondiente en la tabla de la izquierda.

La sentencia RIGHT OUTER JOIN retorna todos los valores de la tabla derecha con los
valores de la tabla de la izquierda correspondientes, si los hay, o retorna un valor nulo
NULL en los campos de la tabla izquierda cuando no haya correspondencia.

SINTAXIS

SELECT column_name(s)

FROM table1

RIGHT JOIN table2

ON table1.column_name=table2.column_name

* RIGHT JOIN
Existe una variacin de la sentencia LEFT JOIN, esta es la sentencia LEFT OUT JOIN

Esta sentencia excluye la interseccin entre las tablas

Su sintaxis es la siguiente:

SELECT column_name(s)

FROM table1

RIGHT OUTER JOIN table2

ON table1.column_name=table2.column_name

6
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

CROSS JOIN (CRUZADA)


El CROSS JOIN presenta el producto cartesiano de los registros de las dos tablas. La
tabla resultante tendr todos los registros de la tabla izquierda combinados con cada
uno de los registros de la tabla derecha.

El cdigo SQL para realizar este producto cartesiano enuncia las tablas que sern
combinadas, pero no incluye algn predicado que filtre el resultado.

SINTAXIS

SELECT column_name(s)

FROM table1

CROSS JOIN table2

ON table1.column_name=table2.column_name

Funcin ISNULL
La funcin ISNULL lo que nos permite es asignar un valor en especfico a un campo que
almacena un valor NULO.
Sintaxis:
SELECT ISNULL(CAMPO, VALOR_X_DEFECTO)

FROM TABLA
Ejemplo:
SELECT A.CEDULA, A.NOMBRE, A.APELLIDO1, SUM(ISNULL(B.MONTO,0))
FROM CAJERO A
LEFT JOIN ENC_FACTURA B
ON A.CEDULA=B.CED_CAJERO
GROUP BY A.CEDULA, A.NOMBRE, A.APELLIDO2

7
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

EJERCICIOS APLICATIVOS
Ejercicio #1
Realice un SELECT utilizando un JOIN entre las tablas DET_FACTURA y ARTICULO, para mostrar
el siguiente resultado:

Resolucin
SELECT

A.NUM_FACTURA, A.LINEA, A.CANTIDAD, A.PRECIO_UNITARIO, B.MARCA, B.DESCRIPCION


FROM DET_FACTURA A

INNER JOIN ARTICULO B

ON A.COD_ARTICULO=B.CODIGO

Ejercicio #2
Realice un SELECT utilizando un JOIN entre las tablas ARTICULO y DET_FACTURA, para mostrar
la marca, la descripcin y la suma de artculos facturados, independientemente si se ha
vendido o no:

8
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

Resolucin
SELECT A.MARCA, A.DESCRIPCION, SUM(B.CANTIDAD)

FROM ARTICULO A

LEFT JOIN DET_FACTURA B

ON A.CODIGO=B.COD_ARTICULO

GROUP BY A.MARCA, A.DESCRIPCION

Ejercicio #3
Realice un SELECT utilizando JOINs para mostrar el nombre concatenado del cliente, las
iniciales del cajero, el nmero de factura, la fecha de la factura, el nmero de lnea del detalle
de la factura, la marca del artculo, la descripcin del artculo, la cantidad y el precio unitario
con que se factur. Y que el monto total de la factura est entre 400,000 y 500,000.

Resolucin

9
TECNOLOGA DE BASE DE DATOS
SENTENCIAS SQL JOIN

10