1

我正在使用以下 mySQL 查询来选择 date_start 在接下来的 14 天内的条目,在大多数情况下它工作正常,但不包括“今天”的条目

SELECT * , DATE_FORMAT( date_start,  ' %d.%m.%Y' ) AS date_formatted
FROM calendar_event
WHERE Date_start
BETWEEN NOW( ) 
AND DATE_ADD( NOW( ) , INTERVAL 14 
DAY ) 
AND amountpaid + amountpaid2 + amountpaid3 < amount
AND amountpaid > 0 

任何想法我如何使它也显示与今天日期安排的条目

非常感谢

4

3 回答 3

3
SELECT * , DATE_FORMAT( date_start,  ' %d.%m.%Y' ) AS date_formatted
FROM calendar_event
WHERE Date_start
BETWEEN CURDATE() 
AND DATE_ADD( CURDATE() , INTERVAL 14 DAY ) 
AND amountpaid + amountpaid2 + amountpaid3 < amount
AND amountpaid > 0

一天中除中午 12:00 以外的任何时间,返回的值NOW()都将大于当天上午 12:00。

于 2012-11-17T18:56:52.680 回答
1

你试试这个

SELECT * , DATE_FORMAT( date_start, ' %d.%m.%Y' ) AS date_formatted FROM calendar_event WHERE Date_start BETWEEN GETDATE() AND DATE_ADD(GETDATE()+14) AND amountpaid + amountpaid2 + amountpaid3 < amount AND amountpaid > 0
于 2012-11-17T18:59:48.810 回答
0

您可以使用DATE_FORMAT因此您只能按日期而不是按小时和分钟进行比较,这是错误的情况,因为它与从 00:00 提前几个小时的当前时间进行比较

于 2012-11-17T18:54:26.437 回答