首页 > 解决方案 > mySQL:查询以在上个月的每 22 日获取所有行

问题描述

我要求选择所有行,开始日期应该是以前的每 22 日,结束日期应该是当月的每 21 日。

例如,如果当前月份是 10 月,我想返回从 9 月 22 日开始且结束日期为 10 月 22 日的所有行。我有一个日期列名为 Transaction_date。

标签: mysqlmysql-workbench

解决方案


select * from your_table
where Transaction_date >= CAST(DATE_FORMAT(NOW(), '%Y-%m-22 06:00:00') as DATE) - interval 1 month
  and Transaction_date < CAST(DATE_FORMAT(NOW(), '%Y-%m-22 06:00:00') as DATE)

推荐阅读