GuestRT

report_social

Nov 14th, 2018
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 1.46 KB | None | 0 0
  1. DROP TABLE SANDBOX_DEV.REPORT_SOCIAL_01
  2. ;
  3.  
  4. DROP TABLE SANDBOX_DEV.REPORT_SOCIAL_02
  5. ;
  6.  
  7. DROP TABLE SANDBOX_DEV.REPORT_SOCIAL_03
  8. ;
  9.  
  10. DROP TABLE SANDBOX_DEV.REPORT_SOCIAL_04
  11. ;
  12.  
  13. DROP TABLE SANDBOX_DEV.REPORT_SOCIAL_05
  14. ;
  15.  
  16. DROP TABLE SANDBOX_DEV.REPORT_SOCIAL
  17. ;
  18.  
  19. CREATE TABLE SANDBOX_DEV.REPORT_SOCIAL_01
  20. AS
  21. SELECT hash_msisdn AS h, COUNT(DISTINCT id) AS count_vk FROM SANDBOX_DEV.USER_PROFILES
  22.   GROUP BY hash_msisdn
  23. ;
  24.  
  25. CREATE TABLE SANDBOX_DEV.REPORT_SOCIAL_02
  26. AS
  27. SELECT hash_msisdn, count_vk, id, attribute_val, attribute_nm FROM SANDBOX_DEV.REPORT_SOCIAL_01 JOIN SANDBOX_DEV.USER_PROFILES ON h = hash_msisdn
  28. ;
  29.  
  30. CREATE TABLE SANDBOX_DEV.REPORT_SOCIAL_03
  31. AS
  32. SELECT hash_msisdn, count_vk, 'VK' AS soc_name, MAX(id) AS soc_value FROM SANDBOX_DEV.REPORT_SOCIAL_02 WHERE count_vk > 1
  33. GROUP BY hash_msisdn, count_vk
  34. ;
  35.  
  36. CREATE TABLE SANDBOX_DEV.REPORT_SOCIAL_04
  37. AS
  38. SELECT hash_msisdn, count_vk, attribute_nm AS soc_name, attribute_val AS soc_value FROM SANDBOX_DEV.REPORT_SOCIAL_02 WHERE count_vk = 1
  39. GROUP BY hash_msisdn, count_vk, attribute_nm, attribute_val
  40. UNION ALL
  41. SELECT hash_msisdn, count_vk, soc_name, soc_value FROM SANDBOX_DEV.REPORT_SOCIAL_03
  42. ;
  43.  
  44. CREATE TABLE SANDBOX_DEV.REPORT_SOCIAL_05
  45. AS
  46. SELECT phone AS uid, count_vk, soc_name, soc_value FROM SANDBOX_DEV.REPORT_SOCIAL_04 JOIN secret.phones s ON hash_msisdn = phone_hash
  47. ;
  48.  
  49. CREATE TABLE SANDBOX_DEV.REPORT_SOCIAL
  50. AS
  51. SELECT uid, soc_name, soc_value, count_vk FROM SANDBOX_DEV.REPORT_SOCIAL_05
  52. ;
Advertisement
Add Comment
Please, Sign In to add comment