Danny_Berova

15. Faultiest model

Oct 17th, 2017
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 0.91 KB | None | 0 0
  1. SELECT TOP (1) WITH TIES
  2.          dd.Name AS Model,
  3.         dd.[Times Serviced] AS [Times Serviced],
  4.         t.[Parts Total] AS [Parts Total]
  5.         FROM (
  6.         SELECT TOP 100 j.ModelId AS ModelId,
  7.         m.Name AS Name,
  8.         COUNT(*) AS [Times Serviced]
  9.         FROM Jobs AS j
  10.         LEFT JOIN Models AS m ON j.ModelId = m.ModelId
  11.         GROUP BY j.ModelId, m.Name
  12.         ORDER BY [Times Serviced]) AS dd
  13.         JOIN (SELECT TOP 100
  14.               j.ModelId,
  15.               m.Name AS Name,
  16.               COUNT(*) AS [Times Serviced] ,
  17.               ISNULL(SUM(p.Price * op.Quantity), 0) AS [Parts Total]
  18.               FROM Jobs AS j
  19.                FULL JOIN Models AS m ON j.ModelId = m.ModelId
  20.               FULL JOIN Orders AS o ON o.JobId = j.JobId
  21.               FULL JOIN OrderParts AS op ON op.OrderId = o.OrderId
  22.               FULL JOIN Parts AS p ON p.PartId = op.PartId
  23.               GROUP BY j.ModelId, m.Name
  24.               ORDER BY [Times Serviced] DESC)
  25.          AS t ON dd.Name = t.Name
  26.          ORDER BY [Times Serviced] DESC
Add Comment
Please, Sign In to add comment