You are on page 1of 3

Base de Datos

Consultas a Varias Tablas - Combinaciones Año 2010


UA – FCACT D a v i d S a m a n ie g o

EJERCICIOS SQL

Combinación de Tablas

Item #1: Para crear una lista de correo mediante una combinación
USE library

SELECT firstname + ' ' + middleinitial+'.' + ' ' + lastname AS [Nombre],


street AS [Calle], city AS [Ciudad], state AS [Estado], zip AS [Código ZIP]
FROM member JOIN adult
ON member.member_no = adult.member_no

Item #2: Para combinar varias tablas y ordenar los resultados


USE library

SELECT co.ISBN, co.copy_no AS [Copia Nº], co.on_loan AS [Prestado],


ti.title AS [Título], it.translation AS [Traducción], it.Cover AS [Tapa]
FROM copy co JOIN title ti
ON co.title_no = ti.title_no

JOIN item it
ON co.isbn = it.isbn
WHERE (co.isbn IN (1, 500, 1000))
ORDER BY co.isbn

Página 1 de 10
Base de Datos
Consultas a Varias Tablas - Combinaciones Año 2010
UA – FCACT D a v i d S a m a n ie g o

Item #3: Para combinar varias tablas con una combinación externa

USE library

SELECT me.member_no AS [Miembro Nº],me.lastname + ', ' + me.firstname + ' ' +


me.middleinitial+'.' AS [Nombre], re.ISBN, CONVERT(char(8),re.log_date,1)
AS [Fecha]
FROM member me LEFT OUTER JOIN reservation re
ON me.member_no = re.member_no
WHERE me.member_no IN (250,341,1675)
ORDER BY me.member_no

Página 2 de 10
Base de Datos
Consultas a Varias Tablas - Combinaciones Año 2010
UA – FCACT D a v i d S a m a n ie g o

Uso del Operador UNION para combinar conjuntos de resultados


Item #4: Para producir un único conjunto de resultados a partir de dos instrucciones SELECT

USE library

SELECT re.ISBN, ti.title AS [Título], me.member_no AS [Miembro Nº],


me.lastname + ', ' + substring(firstname,1,1) AS [Nombre], 'juvenile'
AS [Edad]
FROM reservation re JOIN item it ON re.isbn = it.isbn
JOIN title ti ON it.title_no = ti.title_no
JOIN member me ON re.member_no = me.member_no
JOIN juvenile ju ON re.member_no = ju.member_no
WHERE re.isbn in (1,43, 288)

UNION

SELECT re.isbn, ti.title, me.member_no,


me.lastname + ', ' + substring(firstname,1,1) AS [name], 'adult' AS age
FROM reservation re JOIN item it ON re.isbn = it.isbn
JOIN title ti ON it.title_no = ti.title_no
JOIN member me ON re.member_no = me.member_no
JOIN adult ad ON re.member_no = ad.member_no
WHERE re.isbn in (1,43,288)
ORDER BY re.isbn

Página 3 de 10

You might also like