MYSQL:如何从一开始就获取行直到特定月份结束

时间:2019-09-08 08:19:18

标签: mysql sql

我正在为一个燃油泵项目。这是我的记录表: enter image description here

我想从(2019-07-03)到特定月份(例如2019-09-29)的结束显示行。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:2)

简单的WHERE子句就能解决问题

SELECT id, date, total_amount, total_paid
FROM table
WHERE date <= LAST_DAY(CURDATE())

CURDATE()将返回当前日期,即2019-09-08

LAST_DAY()将返回当月的最后日期,即2019-09-30

WHERE子句将返回带有date <= 2019-09-30

的所有行

更新

如果您要基于用户输入的月份和年份(2019-09)来过滤记录,则可以通过在脚本端附加'-01'或在MySQL级别使用CONCAT来实现,

WHERE date <= LAST_DAY(CONCAT('2019-09', '-01'))

答案 1 :(得分:-1)

我认为这会起作用。您可以相应地更改日期。

Select *
From table
Where date>='2019-07-03' AND date<='2019-09-29'