Advertisement
Guest User

Untitled

a guest
Mar 17th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 3.61 KB | None | 0 0
  1. --1--
  2. --rollup--
  3. SELECT Concat(t.I,' ',t.N) AS "Klient", t.Rok AS [Rok], SUM(t.m) AS Kwota
  4. FROM (  SELECT P.BusinessEntityID AS "pid" , P.FirstName AS I, P.LastName AS N, YEAR(SOH.OrderDate) AS Rok, SOD.LineTotal AS M
  5.     FROM Person.Person AS "P"
  6.         JOIN Sales.Customer AS "C" ON(C.PersonID = P.BusinessEntityID)
  7.         LEFT JOIN Sales.SalesOrderHeader AS "SOH" ON(C.CustomerID = SOH.CustomerID)
  8.         JOIN Sales.SalesOrderDetail AS "SOD" ON(SOH.SalesOrderID = SOD.SalesOrderID))
  9.                 AS "t"
  10. GROUP BY ROLLUP(Concat(t.I,' ',t.N), [Rok]);
  11.  
  12. --cube--
  13. SELECT Concat(t.I,' ',t.N) AS "Klient", t.Rok AS [Rok], SUM(t.m) AS Kwota
  14. FROM (  SELECT P.BusinessEntityID AS "pid" , P.FirstName AS I, P.LastName AS N, YEAR(SOH.OrderDate) AS Rok, SOD.LineTotal AS M
  15.     FROM Person.Person AS "P"
  16.         JOIN Sales.Customer AS "C" ON(C.PersonID = P.BusinessEntityID)
  17.         LEFT JOIN Sales.SalesOrderHeader AS "SOH" ON(C.CustomerID = SOH.CustomerID)
  18.         JOIN Sales.SalesOrderDetail AS "SOD" ON(SOH.SalesOrderID = SOD.SalesOrderID))
  19.                 AS "t"
  20. GROUP BY Concat(t.I,' ',t.N), CUBE([Rok]);
  21.  
  22. --grouping set--
  23. SELECT Concat(t.I,' ',t.N) AS "Klient", t.Rok AS [Rok], SUM(t.m) AS Kwota
  24. FROM (  SELECT P.BusinessEntityID AS "pid" , P.FirstName AS I, P.LastName AS N, YEAR(SOH.OrderDate) AS Rok, SOD.LineTotal AS M
  25.     FROM Person.Person AS "P"
  26.         JOIN Sales.Customer AS "C" ON(C.PersonID = P.BusinessEntityID)
  27.         LEFT JOIN Sales.SalesOrderHeader AS "SOH" ON(C.CustomerID = SOH.CustomerID)
  28.         JOIN Sales.SalesOrderDetail AS "SOD" ON(SOH.SalesOrderID = SOD.SalesOrderID))
  29.                 AS "t"
  30. GROUP BY GROUPING SETS(Concat(t.I,' ',t.N), (Concat(t.I,' ',t.N),[Rok]));
  31.  
  32.  
  33. --2--
  34. --rollup--
  35. SELECT t.Kat AS [Kategoria], t.Pro AS Produkt, t.Rok AS [Rok], SUM(t.Znizka) AS Kwota
  36. FROM (SELECT YEAR(SOH.OrderDate) AS Rok, PC.Name AS Kat, P.Name AS Pro, SOD.UnitPriceDiscount AS Znizka
  37.     FROM Sales.SalesOrderHeader AS SOH
  38.         JOIN Sales.SalesOrderDetail AS SOD ON(SOH.SalesOrderID = SOD.SalesOrderID)
  39.         RIGHT JOIN Production.Product AS P ON(SOD.ProductID = P.ProductID)
  40.         LEFT JOIN Production.ProductSubcategory AS PSC ON(P.ProductSubcategoryID = PSC.ProductSubcategoryID)
  41.         JOIN Production.ProductCategory AS PC ON(PSC.ProductCategoryID = PC.ProductCategoryID))
  42.     AS t
  43. GROUP BY ROLLUP(t.Kat, t.Pro, [Rok]);
  44.  
  45. --cube--
  46. SELECT t.Kat AS [Kategoria], t.Pro AS Produkt, t.Rok AS [Rok], SUM(t.Znizka) AS Kwota
  47. FROM (SELECT YEAR(SOH.OrderDate) AS Rok, PC.Name AS Kat, P.Name AS Pro, SOD.UnitPriceDiscount AS Znizka
  48.     FROM Sales.SalesOrderHeader AS SOH
  49.         JOIN Sales.SalesOrderDetail AS SOD ON(SOH.SalesOrderID = SOD.SalesOrderID)
  50.         RIGHT JOIN Production.Product AS P ON(SOD.ProductID = P.ProductID)
  51.         LEFT JOIN Production.ProductSubcategory AS PSC ON(P.ProductSubcategoryID = PSC.ProductSubcategoryID)
  52.         JOIN Production.ProductCategory AS PC ON(PSC.ProductCategoryID = PC.ProductCategoryID))
  53.     AS t
  54. GROUP BY t.kat, t.Pro, CUBE([Rok]);
  55.  
  56. --grouping sets--
  57. SELECT t.Kat AS [Kategoria], t.Pro AS Produkt, t.Rok AS [Rok], SUM(t.Znizka) AS Kwota
  58. FROM (SELECT YEAR(SOH.OrderDate) AS Rok, PC.Name AS Kat, P.Name AS Pro, SOD.UnitPriceDiscount AS Znizka
  59.     FROM Sales.SalesOrderHeader AS SOH
  60.         JOIN Sales.SalesOrderDetail AS SOD ON(SOH.SalesOrderID = SOD.SalesOrderID)
  61.         RIGHT JOIN Production.Product AS P ON(SOD.ProductID = P.ProductID)
  62.         LEFT JOIN Production.ProductSubcategory AS PSC ON(P.ProductSubcategoryID = PSC.ProductSubcategoryID)
  63.         JOIN Production.ProductCategory AS PC ON(PSC.ProductCategoryID = PC.ProductCategoryID))
  64.     AS t
  65. GROUP BY GROUPING SETS ((t.kat,t.pro), (t.kat, t.pro, [Rok]));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement