Guest User

Untitled

a guest
Jun 22nd, 2018
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.40 KB | None | 0 0
  1. MsgID | DateTime | State | TimeDiff
  2. ---------------------------------------------
  3. 387 | 2014-09-06 21:06:27 | 2 | 43
  4. 387 | 2014-09-06 21:06:28 | 3 | 44
  5. 212 | 2014-09-06 22:16:27 | 1 | 0
  6. 212 | 2014-09-06 22:16:38 | 3 | 11
  7. 532 | 2014-09-06 23:26:27 | 1 | 0
  8. 532 | 2014-09-06 23:27:27 | 3 | 60
  9. 532 | 2014-09-06 23:27:28 | 2 | 61
  10. 215 | 2014-09-06 23:46:27 | 1 | 0
  11. 212 | 2014-09-07 22:16:27 | 1 | 0
  12. 212 | 2014-09-07 22:16:37 | 2 | 10
  13. 212 | 2014-09-07 22:16:38 | 3 | 11
  14.  
  15. MsgID | State 1 | State 2 | State 3 |
  16. -------------------------------------------------------------------------
  17. 212 | 2014-09-06 22:16:27 | null | 2014-09-06 22:16:38 |
  18. 532 | 2014-09-06 23:26:27 | 2014-09-06 23:27:28 | 2014-09-06 23:27:27 |
  19. 215 | 2014-09-06 23:46:27 | null | null |
  20. 212 | 2014-09-07 22:16:27 | 2014-09-07 22:16:37 | 2014-09-07 22:16:38 |
  21.  
  22. select
  23. MsgID,
  24. State1= [1],
  25. State2= [2],
  26. State3=[3]
  27. from
  28. (
  29. select
  30. t1.MsgID,
  31. t1.DateTime,
  32. T1.State,
  33. r=row_number() over ( order by t1.[DateTime])- row_number() over( partition by t1.MsgID order by t1.[Datetime])
  34. from t t1
  35. join
  36. (
  37. select MsgId
  38. from t
  39. group by MsgID
  40. having min(State)=1
  41. ) t2
  42. on t1.MsgId=t2.MsgId
  43. ) src
  44. PIVOT
  45. (
  46. max(DateTime) for State in ([1],[2],[3])
  47. )p
Add Comment
Please, Sign In to add comment