这个SQL有什么问题?
它似乎应该工作,但事实并非如此。
utc_time是一个日期时间字段。
SELECT id
FROM `foo`
WHERE utc_time > now()
AND utc_time <= DATE_ADD(curdate(),INTERVAL 24 day);
解释说Where子句是不可能的。
utc_time是日期时间类型。这是一个示例utc_time值:2011-06-21 00:45:00
答案 0 :(得分:2)
utc_time()
是built-in function。即使没有括号,utc_time
仍会返回当前的UTC时间。
转义名为utc_time
的列。这工作(我测试过):
SELECT id
FROM `foo`
WHERE `utc_time` > now()
AND `utc_time` <= DATE_ADD(curdate(),INTERVAL 24 day);
另一个例子,为什么使用保留字或函数名作为列/表名是一个坏主意。