浏览代码

fix: 提高效率

Signed-off-by: sunshihao <sunshihaoemail>
sunshihao 6 天之前
父节点
当前提交
462e520d8c

+ 2 - 3
xinkeaboard-server/b2b2c-web/src/main/resources/mapper/read/member/MemberReadMapper.xml

@@ -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) 	&lt;= DATE(#{endTime})
+        WHERE day  &lt; 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;