Advertisement
Guest User

Untitled

a guest
Jan 27th, 2020
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 1.61 KB | None | 0 0
  1.  
  2. SELECT
  3.   IF(a.URL IS NOT NULL,a.URL,b.URL) BaseURL,
  4.   IF(a.PreviousURL IS NOT NULL,a.PreviousURL,b.NextURL) URL,
  5.   a.NUMBER PreviousPageQuantity,
  6.   b.NUMBER NextPageQuantity
  7. FROM (
  8.   SELECT
  9.     URL,
  10.     PreviousURL,
  11.     COUNT(PreviousURL) NUMBER
  12.   FROM (
  13.     SELECT
  14.       sessionId,
  15.       TIME,
  16.       URL,
  17.       NUMBER,
  18.       LAG(URL) OVER (PARTITION BY sessionId ORDER BY TIME) PreviousURL
  19.     FROM (
  20.       SELECT
  21.         sessionId,
  22.         hits.TIME TIME,
  23.         hits.pagePath URL,
  24.         RANK() OVER (PARTITION BY sessionId ORDER BY hits.TIME ASC) NUMBER
  25.       FROM
  26.         [owox-demo:OWOXBI_Streaming.session_streaming_20160711]
  27.       WHERE
  28.         hits.TYPE='pageview'
  29.       ORDER BY
  30.         1,
  31.         2,
  32.         3) )
  33.   WHERE
  34.     URL='/products/id1222894335'
  35.   GROUP BY
  36.     URL,
  37.     PreviousURL) a
  38. FULL OUTER JOIN EACH (
  39.   SELECT
  40.     URL,
  41.     NextURL,
  42.     COUNT(NextURL) NUMBER
  43.   FROM (
  44.     SELECT
  45.       sessionId,
  46.       TIME,
  47.       URL,
  48.       NUMBER,
  49.       LEAD(URL) OVER (PARTITION BY sessionId ORDER BY TIME) NextURL
  50.     FROM (
  51.       SELECT
  52.         sessionId,
  53.         hits.TIME TIME,
  54.         hits.pagePath URL,
  55.         RANK() OVER (PARTITION BY sessionId ORDER BY hits.TIME ASC) NUMBER
  56.       FROM
  57.         [owox-demo:OWOXBI_Streaming.session_streaming_20160711]
  58.       WHERE
  59.         hits.TYPE='pageview'
  60.       ORDER BY
  61.         1,
  62.         2,
  63.         3))
  64.   WHERE
  65.     URL='/products/id1222894335'
  66.   GROUP BY
  67.     URL,
  68.     NextURL) b
  69. ON
  70.   a.PreviousURL=b.NextURL
  71. WHERE
  72.   PreviousURL IS NOT NULL
  73.   OR NextURL IS NOT NULL
  74. ORDER BY
  75.   3 DESC,
  76.   4 DESC
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement