You are on page 1of 2

CENTRO DE GESTION DE MERCADOS LOGISTICA Y TECNOLOGIAS DE LA

Fecha:
INFORMACION
octubre/2010
Lenguaje SQL - Subconsulta

TALLER DE SUBCONSULTAS EN SQL – 1.2

Nombre Aprendiz: IBETH ASTRID CÁRDENAS PEÑARETE Fecha:


12/ Octubre/ 2010

Resuelva los puntos planteados en este taller, tomando como base


el documento Subconsultas.pdf. Al finalizar la sesión de clase
remita el documento, de acuerdo con las indicaciones del
instructor. (45 minutos)

SUBCONSULTAS PARA SIMULAR UNA CONSULTA JOIN

Se requiere visualizar el código de los productos que se han vendido


mas de 20 veces, solo si han cambiado de precio entre las ventas.

use Northwind
select distinct od.ProductID
from [Order Details] od
where od.ProductID in (select od.ProductID from [Order Details] ods
where od.UnitPrice <> ods.UnitPrice) group by od.ProductID having
COUNT(od.ProductID) > 20
order by od.ProductID

5. Analice la sentencia de la subconsulta y resuelva:


• Cuántas tablas son consultadas:

1 [Order Details]

• Cuál es la parte de la sintaxis que corresponde a la


subconsulta.

(select od.ProductID from [Order Details] ods


where od.UnitPrice <> ods.UnitPrice)

• Cuál comando se utiliza y por qué se repite.

El comando que se utiliza es SELECT, y se repite por que sin el


no habria una subConsulta.

• Cuáles cláusulas se utilizan y que funcion estan cumpliendo en


cada uso.

Las Clausulas que se utilizan son:


- From: Es la que nos permite llamar la Tabla
- Where: Es al que nos Pone las condiciones de consulta
- Group by: Es la que agrupa los datos
- Order by: Nos Ordena los Datos

• Maque con X cuáles de las siguientes opciones, podria


implementar para mostrarse como columnas de la consulta:
X Nombre del producto.

Instructor Teleinformática: Sandra Yanneth Rueda Guevara


CENTRO DE GESTION DE MERCADOS LOGISTICA Y TECNOLOGIAS DE LA
Fecha:
INFORMACION
octubre/2010
Lenguaje SQL - Subconsulta

Fecha de la venta del producto.


Código de las ventas.
Cuantas veces se ha vendido el producto.
Cantidad de producto vendida en cada venta.

• Agregue la sentencia completa adaptando las opciones


seleccionadas.

use Northwind
select distinct od.ProductID , ProductName
from [Order Details] od inner join dbo.Products Pro on od.ProductID=
Pro.ProductID
where od.ProductID in (select od.ProductID from [Order Details] ods
where od.UnitPrice <> ods.UnitPrice) group by od.ProductID ,
ProductName having
COUNT(od.ProductID) > 20
order by od.ProductID ,ProductName

6. Teniendo en cuenta la base de datos terminal, redacte un


planteamiento que requiera una subconsulta en la sentencia SQL, para
demostrar su comprension en:

• Subconsulta como tabla derivada

USE Terminal1
SELECT F.fl_codiflot, F.fl_nombflot
FROM ( SELECT fl_codiflot, fl_nombflot
FROM Flotas ) AS F

• Subconsulta como simulacion de una clausula JOIN.

USE Terminal1
SELECT DISTINCT FL.fl_nombflot
FROM Flotas AS FL
WHERE FL.fl_codiflot IN
(SELECT BI.bu_codiflot
FROM Buses AS BI
WHERE FL.fl_codiflot <> BI.bu_codiflot)

Redacte un planteamiento para cada caso.

Instructor Teleinformática: Sandra Yanneth Rueda Guevara