Advertisement
Guest User

Untitled

a guest
Jul 26th, 2016
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.30 KB | None | 0 0
  1. -- Set Variabes --
  2. DECLARE @name VARCHAR(3) = 'L20'
  3. DECLARE @cable int = (SELECT
  4. cd.id
  5.  
  6. FROM
  7. dbo.WTG_ID wd JOIN
  8. dbo.power_wtg p ON wd.id = p.wtgid,
  9. dbo.data d JOIN
  10. dbo.Cable_ID cd ON cd.id = d.cable
  11.  
  12. WHERE
  13. wd.name = @name and
  14. wd.string = cd.string and
  15. wd.position = cd.wtgs
  16.  
  17. GROUP BY
  18. cd.id)
  19. -- Query --
  20. select
  21. case
  22. WHEN d.KP < 8321.399 THEN '1) K20'
  23. WHEN d.KP < 8336.499 THEN '2) K20 J-Tube'
  24. WHEN d.KP < 8356.499 THEN '3) K20 CPS'
  25. WHEN d.KP < 9392.977 THEN '4) K20 - L20'
  26. WHEN d.KP < 9412.977 THEN '5) L20 CPS'
  27. WHEN d.KP < 9428.077 THEN '6) L20 J-Tube'
  28. else '7) L20'
  29. end as Location,
  30. case
  31. WHEN d.temp < 21 THEN '20'
  32. WHEN d.temp < 22 THEN '21'
  33. WHEN d.temp < 23 THEN '22'
  34. WHEN d.temp < 24 THEN '23'
  35. WHEN d.temp < 25 THEN '24'
  36. WHEN d.temp < 26 THEN '25'
  37. WHEN d.temp < 27 THEN '26'
  38. WHEN d.temp < 28 THEN '27'
  39. WHEN d.temp < 29 THEN '28'
  40. WHEN d.temp < 30 THEN '29'
  41. WHEN d.temp < 31 THEN '30'
  42. WHEN d.temp < 32 THEN '31'
  43. else '32'
  44. end as temp,
  45. count (d.temp) as [frequency every 2 hours],
  46. count (distinct(datepart(day, d.time))) as [frequency every day],
  47. count (distinct(datepart(week, d.time))) as [frequency every week],
  48. min(d.KP) as 'Min KP',
  49. max(d.KP) as 'Max KP',
  50. avg(d.KP) as 'Avg KP'
  51.  
  52. from
  53. data d
  54.  
  55. where
  56. d.temp > 20 and
  57. d.cable = @cable
  58.  
  59. group by
  60. case
  61. WHEN d.KP < 8321.399 THEN '1) K20'
  62. WHEN d.KP < 8336.499 THEN '2) K20 J-Tube'
  63. WHEN d.KP < 8356.499 THEN '3) K20 CPS'
  64. WHEN d.KP < 9392.977 THEN '4) K20 - L20'
  65. WHEN d.KP < 9412.977 THEN '5) L20 CPS'
  66. WHEN d.KP < 9428.077 THEN '6) L20 J-Tube'
  67. else '7) L20'
  68. end,
  69. case
  70. WHEN d.temp < 21 THEN '20'
  71. WHEN d.temp < 22 THEN '21'
  72. WHEN d.temp < 23 THEN '22'
  73. WHEN d.temp < 24 THEN '23'
  74. WHEN d.temp < 25 THEN '24'
  75. WHEN d.temp < 26 THEN '25'
  76. WHEN d.temp < 27 THEN '26'
  77. WHEN d.temp < 28 THEN '27'
  78. WHEN d.temp < 29 THEN '28'
  79. WHEN d.temp < 30 THEN '29'
  80. WHEN d.temp < 31 THEN '30'
  81. WHEN d.temp < 32 THEN '31'
  82. else '32'
  83. end
  84.  
  85. ORDER BY
  86. 1 asc, 2 asc
  87.  
  88. ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement