SQL 带有日期比较的请求

SQL request with date comparison

我的请求和日期栏有问题。

这是我的 table event:

我想在我的页面上显示 6 个事件。与今天的日期相比,最后 3 个和接下来的 3 个。但是我的请求不起作用。

我想我必须使用 betweennow()datediff,但是 mysql 向我发送语法错误。

SELECT * 
FROM events
WHERE (date BETWEEN DATEDIFF(NOW() - 3 days) AND NOW()) 
   OR (date BETWEEN DATEDIFF(NOW() + 3 days) AND NOW())
ORDER BY date DESC 
LIMIT 0, 6

你能帮帮我吗?

DATEDIFF returns 两个时间点之间的时间差。因此,从昨天到今天,DATEDIFF 可能是 24 小时。您可能会告诉它 return 24 到 2016-02-23 之间的日期。那没有多大意义。我认为您打算使用 DATE_ADD.