Solu Taller Transact_3

6
CENTRO DE GESTION DE MERCADOS, LOGISTICA Y TECNOLOGIAS DE LA INFORMACION ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION Módulo Bases de datos Taller transact 3 Presentado a: Sandra Rueda Instructora Presentado por: Yessica Rodríguez Villarraga Orden: 40130 Septiembre de 2010 Bogotá D.C.

Transcript of Solu Taller Transact_3

Page 1: Solu Taller Transact_3

CENTRO DE GESTION DE MERCADOS, LOGISTICA Y TECNOLOGIAS DE LA INFORMACION

ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION

MóduloBases de datos

Taller transact 3

Presentado a:Sandra Rueda

Instructora

Presentado por:Yessica Rodríguez Villarraga

Orden:40130

Septiembre de 2010Bogotá D.C.

Page 2: Solu Taller Transact_3

Introducción

En este taller podemos observar y aprender acerca de las consultas multitabla y cómo manejarlas ya que observamos vario ejemplos.

Page 3: Solu Taller Transact_3

Ejercicios

Usando la base de datos Northwind:

1. Consultar los nombres de los proveedores, ciudad, teléfono, nombre del producto, precio y existencias, para aquellos cuyas existencias sean menores a 20 unidades.

select CompanyName , City , Phone , ProductName , UnitPrice ,UnitsInStockfrom Suppliers P Inner join Products S on P.SupplierID=S.SupplierID where UnitsInStock<20order by UnitsInStock

2. Consultar los nombres de los empleados que han atendido al cliente ALFKI, el listado debe incluir nombre completo del empleado y cargo.

select DISTINCT FirstName , LastName , Title , CustomerIDfrom (dbo.Employees P Inner join dbo.Orders S on P.EmployeeID=S.EmployeeID)where CustomerID = 'ALFKI'

3. Consultar los nombres de los clientes que hicieron compras en octubre del 2006.

SELECT DISTINCT CompanyName,OrderDateFROM dbo.Customers P Inner join dbo.Orders S on P.CustomerID=S.CustomerID WHERE YEAR (OrderDate)= 1996 AND MONTH (OrderDate)= 10ORDER BY OrderDate

4. Consultar por cada producto el total de unidades vendidas por mes, el listado debe incluir nombre del producto, el mes y el total de unidades vendidas en ese mes.

SELECT DISTINCT ProductName , MONTH (OrderDate) AS Mes, YEAR (OrderDate) AS AÑO, SUM (Quantity)AS TOTALFROM (dbo.Products P Inner join [Order Details] O on P.ProductID=O.ProductID)INNER JOIN dbo.Orders A ON O.OrderID=A.OrderIDGROUP BY ProductName ,MONTH (OrderDate) , YEAR (OrderDate)ORDER BY YEAR (OrderDate), MONTH (OrderDate)

5. Mostrar los nombres de los productos, su precio unitario y existencias únicamente para los de las categorías 3, 4 y 5. La lista debe mostrarse en orden Alfabético.

SELECT ProductName , UnitPrice , S.CategoryIDFROM dbo.Products P Inner join dbo.Categories S on P.CategoryID=S.CategoryIDGROUP BY ProductName , UnitPrice , S.CategoryID

Page 4: Solu Taller Transact_3

HAVING S.CategoryID IN (3,4,5) ORDER BY S.CategoryID

6. Listar sin repeticiones las ciudades de origen de los clientes de la base de datos.

SELECT DISTINCT City FROM CustomersORDER BY City

7. Listar Cuantos productos existen por categoría, mostrar el nombre de la categoria.

SELECT CategoryName, COUNT (CategoryName)AS TotalFROM dbo.Categories P Inner join dbo.Products S on P.CategoryID=S.CategoryIDGROUP BY CategoryNameORDER BY COUNT (CategoryName)

8. ¿Cuál es el precio promedio de los productos de la categoría de los cereales?

SELECT CategoryName, avg (UnitPrice)AS TOTALFROM dbo.Categories P Inner join dbo.Products S on P.CategoryID=S.CategoryIDWHERE CategoryName ='Grains/Cereals'GROUP BY CategoryName

9. Listar los clientes cuyo nombre empiece por A incluyendo los números de órdenes que han hecho.

SELECT ContactName , OrderIDFROM dbo.Customers P Inner join dbo.Orders S on P.CustomerID=S.CustomerIDWHERE ContactName LIKE 'A%'

10.Listar el 50% de los empleados con la descripción de cuanto le han vendido a cada cliente.

SELECT top 50 percent FirstName, LastName , CompanyName ,FreightFROM (dbo.Employees P Inner join [Orders] O on P.EmployeeID=O.EmployeeID)INNER JOIN dbo.Customers A ON O.CustomerID=A.CustomerIDORDER BY Freight

11.Ordenar de mayor a menor por su precio unitario los productos cuyo empaque sean botellas (bottles).

SELECT QuantityPerUnit , UnitPriceFROM dbo.Products

Page 5: Solu Taller Transact_3

WHERE QuantityPerUnit LIKE '%bottles%'ORDER BY UnitPrice DESC

12.Listar para cada proveedor las categorías de productos que suministra.

SELECT CompanyName , CategoryNameFROM (dbo.Suppliers P Inner join [Products] O on P.SupplierID=O.SupplierID)INNER JOIN dbo.Categories A ON O.CategoryID=A.CategoryID