CREATE TABLE ts_user_behavior_statistic( `behavior_id` INT NOT NULL AUTO_INCREMENT COMMENT '用户行为统计主键' , `org_id` INT COMMENT '公司id' , `building_id` VARCHAR(64) COMMENT '楼盘id' , `event_name` VARCHAR(32) COMMENT '事件名称' , `event_type` VARCHAR(32) COMMENT '事件类型' , `behavior_num` INT COMMENT '行为数量统计' , `create_date` DATETIME COMMENT '创建时间' , PRIMARY KEY (behavior_id) ) COMMENT = '用户行为统计表 ';; INSERT INTO ts_user_behavior_statistic ( `create_date`, `event_name`, `event_type`, `behavior_num`, `building_id`, `org_id` ) SELECT temp_date.date AS create_date, temp_date.type_name AS event_name, temp_date.type_id AS event_type, temp.activityCount AS behavior_num, temp.building_id, temp.org_id FROM ( SELECT DATE_FORMAT( DATE_SUB( now( ), INTERVAL a.rownum DAY ), '%Y-%m-%d' ) AS date, b.type_id, b.type_name, a.rownum FROM sequence a, td_biz_event_type b ) AS temp_date LEFT JOIN ( SELECT COUNT( 1 ) AS activityCount, tpvr.event_type, DATE_FORMAT( tpvr.visit_time, '%Y-%m-%d' ) AS date, tpvr.building_id, tp.org_id FROM ta_person tp INNER JOIN ta_person_visit_record tpvr ON tp.person_id = tpvr.person_id WHERE tp.person_type IN ( 'customer', 'drift', 'estate agent' ) GROUP BY tpvr.event_type, DATE_FORMAT( tpvr.visit_time, '%Y-%m-%d' ), tp.org_id, tpvr.building_id ) AS temp ON temp_date.date = temp.date AND temp_date.type_id = temp.event_type