相关推荐recommended
Mysql 查询最近12个月的数据
作者:mmseoamin日期:2024-03-20

示例: 

比如现在是2024年 1月, 我们想查询最近12个月数据

那么就是 2024-01 的数据,以及 2023-02 到2023-12的数据,一共12个月数据。

Mysql 查询最近12个月的数据,第1张

ps: 当然起始我们能自然而然拿到最近12个月的起始和结束时间,那么开闭区间怎么用是取决于我们自己。

那么我们通过sql怎么实现呢? 

① 拿到 最近12个月的起始结束时间

② 使用时间比较大小区间取数即可

最近12个月

起始时间 : DATE_SUB(CURDATE(), INTERVAL 12 MONTH)

结束时间  :  DATE_ADD(CURDATE(), INTERVAL -1 DAY)

SELECT DATE_SUB(CURDATE(), INTERVAL 12 MONTH),DATE_ADD(CURDATE(), INTERVAL -1 DAY);

Mysql 查询最近12个月的数据,第2张

因为我要的是月维度,所以我直接切7个数,刚好到月,用来比大小,即可。

SELECT id,create_time, 业务字段 

FROM  你的表 

WHERE  LEFT(create_time,7) > LEFT(DATE_SUB(CURDATE(), INTERVAL 12 MONTH) ,7)

AND LEFT(create_time,7) <= LEFT(DATE_SUB(CURDATE(), INTERVAL -1 DAY) ,7)

好了就到这。