|
@@ -335,13 +335,12 @@
|
|
|
</select>
|
|
|
|
|
|
<select id="getMemberTrend" resultType="com.slodon.b2b2c.vo.statistics.ScreenMemberTrendVO">
|
|
|
- -- 生成日期序列并关联统计
|
|
|
WITH RECURSIVE dates AS (
|
|
|
SELECT DATE(#{startTime}) AS day
|
|
|
UNION ALL
|
|
|
SELECT DATE_ADD(day, INTERVAL 1 DAY)
|
|
|
FROM dates
|
|
|
- WHERE DATE_ADD(day, INTERVAL 1 DAY) <= DATE(#{endTime})
|
|
|
+ WHERE day < DATE(#{endTime}) -- 优化终止条件,减少一次计算
|
|
|
)
|
|
|
SELECT
|
|
|
d.day,
|
|
@@ -350,7 +349,7 @@
|
|
|
LEFT JOIN member m
|
|
|
ON DATE(m.register_time) = d.day
|
|
|
AND m.register_time BETWEEN #{startTime} AND #{endTime}
|
|
|
- where m.web_site = #{webSite}
|
|
|
+ AND m.web_site = #{webSite} -- 将web_site条件移到JOIN中
|
|
|
GROUP BY d.day
|
|
|
ORDER BY d.day;
|
|
|
|