miércoles, 2 de marzo de 2011

EJEMPLOS DE CODIGO TRANSACT

Ejemplos, usando la base de datos Northwind,

1.       La organización necesita saber quién es su mejor cliente (El que más dinero ha generado en ventas),  cree un script que devuelva esta información.

select  Top 1 c.companyname, sum(od.quantity* od.unitprice)
from Customers as c inner join orders as o
on c.CustomerID=o.CustomerID
inner join [Order Details] as od
on o.OrderID=od.OrderID
group by c.CompanyName
order by sum(od.quantity* od.unitprice) desc

2.       Cree script al que se le ingrese el número de orden y la elimine, tenga en cuenta que existe una relación entre el detalle de órdenes y la orden.

Delete [Order Details] where OrderID=10248
delete orders where OrderID=10250
 
3.       Cree un script que elimine todas las ordenes donde se compró el producto 23

Delete from o
from [Order Details] as od
inner join orders as o
on o.OrderID=od.OrderID
where od.ProductID=23

4.       Cree un script que muestre todos los clientes que no han realizado una orden.

Select c.companyname from Customers as c
left outer join orders as od
on c.CustomerID=od.customerid
where od.OrderID is null

5.       En estados Unidos se ha agregado un nuevo impuesto a partir de 1998, por lo que se necesita aumentar el precio de todos los productos en las ventas a partir de ese año, por lo que debe actualizar estas ventas en un 5%

update od set od.UnitPrice=od.UnitPrice* 1.05
from
[Order Details] as od inner join products as p
on od.ProductID=p.ProductID
inner join Suppliers as s
on s.SupplierID=p.SupplierID
where s.Country='USA'
6.       Cree un script que devuelva la cantidad de unidades vendidas del producto 23.

Select SUM(quantity) from [Order Details]
where ProductID=23
7.       Cree un script que devuelva todos los clientes que han comprado productos de Estados Unidos, teniendo en cuenta que la procedencia del producto es en base al proveedor.

select c.CompanyName
from customers as c inner join orders as o
on c.customerid=o.customerid
inner join [Order Details] as od on
o.orderid=od.orderid
inner join products as p
on od.ProductID=p.ProductID
inner join Suppliers as s
on s.SupplierID=p.SupplierID
where s.Country='USA'

8.       Cree un script al que se le ingrese el código del producto y devuelva los clientes que han solicitado este producto.

select c.CompanyName
from customers as c inner join orders as o
on c.customerid=o.customerid
inner join [Order Details] as od on
o.orderid=od.orderid
inner join products as p
on od.ProductID=p.ProductID
where p.ProductID=@producto

No hay comentarios:

Publicar un comentario