Advertisement
Guest User

Untitled

a guest
Jun 29th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. -- Window関数でCOUNT(DISTINCT field) OVER()を擬似的に実現する
  2. SELECT
  3. 都道府県名
  4. , 公園名
  5. , "訪問者IP"
  6. , 県別訪問者数
  7. , 都道府県別公園別訪問者数
  8. , SUM(都道府県別ユニーク訪問者フラグ) OVER(PARTITION BY 都道府県名 ORDER BY 都道府県名) AS 都道府県別ユニーク訪問者数
  9. , SUM(公園別ユニーク訪問者フラグ) OVER(PARTITION BY 公園名 ORDER BY 公園名) AS 公園別ユニーク訪問者数
  10. , SUM(ユニーク訪問者フラグ) OVER() AS ユニーク訪問者数
  11. FROM
  12. (
  13. SELECT
  14. 都道府県名
  15. , 公園名
  16. , "訪問者IP"
  17. , COUNT(*) OVER(PARTITION BY 都道府県名 ORDER BY 都道府県名) AS 県別訪問者数
  18. , COUNT(*) OVER(PARTITION BY 都道府県名, 公園名 ORDER BY 都道府県名, 公園名) AS 都道府県別公園別訪問者数
  19. , CASE WHEN "訪問者IP" = LAG("訪問者IP", 1) OVER(PARTITION BY 都道府県名 ORDER BY 都道府県名, "訪問者IP") THEN 0 ELSE 1 END AS 都道府県別ユニーク訪問者フラグ
  20. , CASE WHEN "訪問者IP" = LAG("訪問者IP", 1) OVER(PARTITION BY 公園名 ORDER BY 公園名, "訪問者IP") THEN 0 ELSE 1 END AS 公園別ユニーク訪問者フラグ
  21. , CASE WHEN "訪問者IP" = LAG("訪問者IP", 1) OVER(ORDER BY "訪問者IP") THEN 0 ELSE 1 END ユニーク訪問者フラグ
  22. FROM
  23. test
  24. ORDER BY
  25. 都道府県名
  26. , 公園名
  27. ) AS 集計基本結果セット
  28. ORDER BY
  29. 都道府県名
  30. , 公園名
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement