Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2019
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.42 KB | None | 0 0
  1. use northwind
  2. --CW1
  3. --1
  4. select sum(quantity), CustomerID
  5. from [Order Details]
  6. inner join orders
  7. on [Order Details].OrderID = orders.OrderID
  8. group by CustomerID, quantity
  9. --2 zle
  10. select sum(quantity), CustomerID
  11. from [Order Details]
  12. left outer join orders
  13. on [Order Details].OrderID = orders.OrderID
  14. group by CustomerID
  15. having sum(quantity) > 250
  16.  
  17. --3
  18. select sum(UnitPrice*quantity*discount) as suma, Orders.OrderID, ContactName
  19. from [Order Details]
  20. left outer join Orders
  21. on orders.OrderID = [Order Details].OrderID
  22. inner join Customers
  23. on orders.CustomerID = customers.CustomerID
  24. group by Orders.OrderID, ContactName
  25.  
  26. --4
  27. select sum(UnitPrice*quantity*(1-discount)) as suma, Orders.OrderID, ContactName
  28. from [Order Details]
  29. left outer join Orders
  30. on orders.OrderID = [Order Details].OrderID
  31. inner join Customers
  32. on orders.CustomerID = customers.CustomerID
  33. group by Orders.OrderID, ContactName
  34. having sum(Quantity) > 250
  35.  
  36. --5
  37. select sum(UnitPrice*quantity*(1-discount)) as suma, ContactName, Employees.firstname, employees.lastname
  38. from [Order Details]
  39. left outer join Orders
  40. on orders.OrderID = [Order Details].OrderID
  41. inner join Customers
  42. on orders.CustomerID = customers.CustomerID
  43. inner join Employees
  44. on Employees.EmployeeID = orders.EmployeeID
  45. group by ContactName, FirstName, LastName
  46. having sum(Quantity) > 250
  47.  
  48. ------------CWICZENIE 2
  49.  
  50. --1
  51. select CategoryName, sum(Quantity) suma
  52. from Categories
  53. inner join products
  54. on Products.CategoryID = Categories.CategoryID
  55. inner join [Order Details]
  56. on Products.ProductID = [Order Details].ProductID
  57. group by CategoryName
  58.  
  59. --2
  60. select CategoryName, sum([Order Details].UnitPrice*quantity*(1-Discount)) "laczna cena"
  61. from Categories
  62. inner join products
  63. on Products.CategoryID = Categories.CategoryID
  64. inner join [Order Details]
  65. on Products.ProductID = [Order Details].ProductID
  66. group by CategoryName
  67.  
  68. --3 co??
  69.  
  70. --4 ??
  71. select (sum(UnitPrice*Quantity*(1-Discount))+Freight) as suma, orders.OrderID
  72. from [Order Details]
  73. inner join orders
  74. on orders.OrderID = [Order Details].OrderID
  75. group by orders.OrderID, Freight
  76.  
  77. ----------CWICZENIE 3
  78. --1
  79. select count(ShipperID) "liczba zamowien", ShipperID
  80. from Shippers
  81. inner join orders
  82. on orders.shipvia = Shippers.ShipperID
  83. where year(ShippedDate) < 1998 and year(ShippedDate) > 1996
  84. group by ShipperID
  85.  
  86. --2
  87. select top 1 count(ShipperID) "liczba zamowien", CompanyName
  88. from Shippers
  89. inner join orders
  90. on orders.shipvia = Shippers.ShipperID
  91. where year(ShippedDate) < 1998 and year(ShippedDate) > 1996
  92. group by CompanyName
  93. order by count(ShipperID) desc
  94.  
  95. --3
  96. select FirstName + ' ' + LastName as "imie i nazwisko", count(OrderID) as "suma zamowien"
  97. from Employees
  98. inner join orders
  99. on orders.EmployeeID = Employees.EmployeeID
  100. group by FirstName + ' ' + LastName
  101.  
  102. --4
  103. select top 1 FirstName + ' ' + LastName as "imie i nazwisko", count(OrderID) as "suma zamowien"
  104. from Employees
  105. inner join orders
  106. on orders.EmployeeID = Employees.EmployeeID
  107. where year(shippeddate)=1997
  108. group by FirstName + ' ' + LastName
  109. order by count(OrderID) desc
  110.  
  111. --5
  112. select top 1 FirstName + ' ' + LastName as "imie i nazwisko", UnitPrice*quantity*(1-discount) as "wartosc zamowienia"
  113. from Employees
  114. inner join orders
  115. on orders.EmployeeID = Employees.EmployeeID
  116. inner join [Order Details]
  117. on [Order Details].OrderID = orders.OrderID
  118. where year(shippeddate)=1997
  119. order by UnitPrice*quantity*(1-discount) desc
  120.  
  121. -----------CWICZENIE 5
  122. --1a)
  123. select FirstName + ' ' + LastName as "imie i nazwisko", count(OrderID) as "suma zamowien"
  124. from Employees
  125. inner join orders
  126. on orders.EmployeeID = Employees.EmployeeID
  127. where Employees.employeeID in (select Reportsto from Employees where ReportsTo IS NOT null)
  128. group by FirstName + ' ' + LastName
  129.  
  130. --1b)
  131. select FirstName + ' ' + LastName as "imie i nazwisko", count(OrderID) as "suma zamowien"
  132. from Employees
  133. inner join orders
  134. on orders.EmployeeID = Employees.EmployeeID
  135. where Employees.employeeID NOT IN (select Reportsto from Employees where ReportsTo IS NOT null)
  136. group by FirstName + ' ' + LastName
  137.  
  138.  
  139. ----
  140.  
  141. select FirstName + ' ' + LastName as "imie i nazwisko", count(OrderID) as "suma zamowien"
  142. from Employees
  143. inner join orders
  144. on orders.EmployeeID = Employees.EmployeeID
  145. where NOT EXISTS (select 1 from Employees E where E.ReportsTo = Employees.employeeID)
  146. group by FirstName + ' ' + LastName
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement