1. 初始化中间表
2. 更新中间表的结束时间字段,取大于当前行的第一条记录的开始时间作为结束时间,如果没有,则取一天最后时间
UPDATE $table AS a SET end_time=ifnull( (select start_time from (SELECTid,uid,start_time FROM $table WHERE on_date='$statday') as b WHERE b.uid=a.uid AND b.id>a.id ORDER BYb.start_time ASC LIMIT 1) ,'$enddate') WHERE a.on_date='$statday' |