Advertisement
Guest User

Untitled

a guest
Feb 11th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 0.98 KB | None | 0 0
  1. WITH CTE_TakingJourneysInfo(JourneyId,JourneyDiffs)
  2. AS
  3. (
  4. SELECT
  5.     j.Id
  6.     ,DATEDIFF(minute,j.JourneyStart,j.JourneyEnd) AS Diff
  7. FROM
  8.     Journeys AS j
  9. ),
  10. CTE_TakingMaxDiff (MaxDiff)
  11. AS
  12. (
  13. SELECT
  14.     MAX(JourneyDiffs)
  15. FROM
  16.     CTE_TakingJourneysInfo AS cte
  17. ),
  18. CTE_TakingTheLongestJourneyId (LongestJourneyId)
  19. AS
  20. (
  21. SELECT
  22.     CTE_TakingJourneysInfo.JourneyId
  23. FROM
  24.     CTE_TakingMaxDiff
  25.     ,CTE_TakingJourneysInfo
  26. WHERE
  27.     CTE_TakingJourneysInfo.JourneyDiffs = CTE_TakingMaxDiff.MaxDiff
  28. ),
  29. CTE_TakingInfoAboutTheColonistCountPerJob(JobName,ColonistsCount)
  30. AS
  31. (
  32. SELECT
  33.     tc.JobDuringJourney
  34.     ,COUNT(tc.ColonistId)
  35. FROM
  36.     TravelCards AS tc
  37. INNER JOIN
  38.     CTE_TakingTheLongestJourneyId AS ttlji
  39. ON
  40.     tc.JourneyId = ttlji.LongestJourneyId
  41. WHERE
  42.     tc.JourneyId = ttlji.LongestJourneyId
  43. GROUP BY tc.JobDuringJourney
  44. )
  45. SELECT TOP(1)
  46.     LongestJourneyId
  47.     ,JobName
  48. FROM
  49.     CTE_TakingInfoAboutTheColonistCountPerJob
  50.     ,CTE_TakingTheLongestJourneyId
  51. ORDER BY ColonistsCount ASC
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement