如何在mysql上每个月的date1和15

时间:2016-12-24 15:41:33

标签: mysql date

我有一个名为request的表,用户提交了他们的请求,我希望获得当月前15天的所有请求的信息,以及在同一个月剩下的15天之后完成的所有请求所以我每个月都在这个月。

SELECT * 
FROM request
WHERE req_date >= curdate() - INTERVAL DAYOFWEEK(curdate()) + 15 DAY
AND req_date < curdate() - INTERVAL DAYOFWEEK(curdate())- 1 DAY;

这就是为什么我找到了通过周,但是基于当前日期,我需要它基于当月的1和同月的15,所以我可以知道本月发生的事情分为2个时段< / p>

1 个答案:

答案 0 :(得分:0)

这是前15个

SELECT * FROM request 
WHERE
req_date between  CAST(DATE_FORMAT(NOW() ,'%Y-%m-01') as DATE)   
        and  CAST(DATE_FORMAT(NOW() ,'%Y-%m-15') as DATE)
;

这是下半个月的

SELECT * FROM request 
WHERE
req_date between  CAST(DATE_FORMAT(NOW() ,'%Y-%m-16') as DATE)   
        and LAST_DAY(DATE_ADD(NOW(), INTERVAL 1 MONTH))
;