用户行为改造sql.txt 1.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. CREATE TABLE ts_user_behavior_statistic(
  2. `behavior_id` INT NOT NULL AUTO_INCREMENT COMMENT '用户行为统计主键' ,
  3. `org_id` INT COMMENT '公司id' ,
  4. `building_id` VARCHAR(64) COMMENT '楼盘id' ,
  5. `event_name` VARCHAR(32) COMMENT '事件名称' ,
  6. `event_type` VARCHAR(32) COMMENT '事件类型' ,
  7. `behavior_num` INT COMMENT '行为数量统计' ,
  8. `create_date` DATETIME COMMENT '创建时间' ,
  9. PRIMARY KEY (behavior_id)
  10. ) COMMENT = '用户行为统计表 ';;
  11. INSERT INTO ts_user_behavior_statistic ( `create_date`, `event_name`, `event_type`, `behavior_num`, `building_id`, `org_id` ) SELECT
  12. temp_date.date AS create_date,
  13. temp_date.type_name AS event_name,
  14. temp_date.type_id AS event_type,
  15. temp.activityCount AS behavior_num,
  16. temp.building_id,
  17. temp.org_id
  18. FROM
  19. (
  20. SELECT
  21. DATE_FORMAT( DATE_SUB( now( ), INTERVAL a.rownum DAY ), '%Y-%m-%d' ) AS date,
  22. b.type_id,
  23. b.type_name,
  24. a.rownum
  25. FROM
  26. sequence a,
  27. td_biz_event_type b
  28. ) AS temp_date
  29. LEFT JOIN (
  30. SELECT
  31. COUNT( 1 ) AS activityCount,
  32. tpvr.event_type,
  33. DATE_FORMAT( tpvr.visit_time, '%Y-%m-%d' ) AS date,
  34. tpvr.building_id,
  35. tp.org_id
  36. FROM
  37. ta_person tp
  38. INNER JOIN ta_person_visit_record tpvr ON tp.person_id = tpvr.person_id
  39. WHERE
  40. tp.person_type IN ( 'customer', 'drift', 'estate agent' )
  41. GROUP BY
  42. tpvr.event_type,
  43. DATE_FORMAT( tpvr.visit_time, '%Y-%m-%d' ),
  44. tp.org_id,
  45. tpvr.building_id
  46. ) AS temp ON temp_date.date = temp.date
  47. AND temp_date.type_id = temp.event_type