Guest User

Untitled

a guest
Oct 16th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.90 KB | None | 0 0
  1. /*
  2. 35% a
  3. 25% b
  4. 30% c
  5. 10% null
  6. */
  7.  
  8. WITH tally
  9. (vals, updateThis, bucket)
  10. AS
  11. (
  12. SELECT
  13. DATEADD(DAY, - ROW_NUMBER() OVER (ORDER BY (SELECT NULL)), GETDATE())
  14. , NULL
  15. , NTILE(100) OVER (ORDER BY (SELECT NULL))
  16. FROM
  17. (
  18. VALUES (0), (0), (0), (0), (0), (0), (0), (0), (0)) AS a(n)
  19. CROSS JOIN (VALUES (0), (0), (0), (0), (0), (0), (0), (0), (0)) AS b(n)
  20. CROSS JOIN (VALUES (0), (0), (0), (0), (0), (0), (0), (0), (0)) AS c(n)
  21. )
  22. --UPDATE
  23. --SET updateThis
  24. , updated
  25. AS
  26. (
  27. SELECT
  28. t.vals
  29. , CASE
  30. WHEN t.bucket <= 35 THEN 'a'
  31. WHEN t.bucket > 35 AND t.bucket <=60 THEN 'b'
  32. WHEN t.bucket > 60 AND t.bucket <=90 THEN 'c'
  33. WHEN t.bucket > 60 AND t.bucket <=90 THEN 'NULL'
  34. END AS updated
  35. , t.bucket
  36. FROM tally t
  37. )
  38. SELECT
  39. U.updated
  40. , COUNT(1) AS actual
  41. FROM
  42. updated u
  43. GROUP BY U.updated
Add Comment
Please, Sign In to add comment