Advertisement
Guest User

Untitled

a guest
Sep 14th, 2019
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2.  
  3.  
  4. SELECT  ss0.USER_ID, ss0.session_id, ss0.SESSION_START, ss0.next_session,
  5. RANK() over(PARTITION BY ss0.USER_ID, ss0.session_id ORDER BY ss0.USER_ID, ss0.session_id, vp.TIMESTAMP2) SESSION_ACTION_ID,
  6. vp.*
  7. from(
  8.     SELECT p2.id, p2.USER_ID, p2.page, p2.TIMESTAMP2 SESSION_START,
  9.     ROW_NUMBER() over(ORDER BY p2.user_id,p2.TIMESTAMP2) session_id,
  10.     LAG(p2.TIMESTAMP2, 1, p2.TIMESTAMP2+100000000) over(PARTITION BY p2.USER_ID ORDER BY p2.user_id,p2.TIMESTAMP2 desc) next_session
  11.     FROM (
  12.         SELECT p1.ID, p1.USER_ID, p1.PAGE, p1.TIMESTAMP2,
  13.         LAG(p1.TIMESTAMP2, 1, p1.TIMESTAMP2-3601) OVER (PARTITION BY p1.USER_ID ORDER BY p1.TIMESTAMP2) - p1.TIMESTAMP2 session_lag
  14.         FROM PUBLIC.VIMBOX_PAGES p1
  15.         WHERE USER_ID in (15,12)
  16.         ORDER BY USER_ID,TIMESTAMP2
  17.     ) p2
  18.     WHERE -1*(p2.session_lag)>3600
  19. )ss0 -- session_starters
  20. LEFT JOIN PUBLIC.VIMBOX_PAGES vp ON vp.USER_ID = ss0.USER_ID AND vp.TIMESTAMP2>=ss0.SESSION_START AND vp.TIMESTAMP2<ss0.next_session
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement