2013-12-07 156 views
0

我有一列(到期日期)的表。我想选择所有到期日期在今天和下周之间的行。我正在使用MySQL和InnoDB类型。选择当前日期和一周之间的日期InnoDB

我尝试这样:

SELECT name, expiration 
FROM exp 
WHERE (expiration BETWEEN(CURRENT_DATE, INTERVAL 1 WEEK)); 

但我有语法错误。有错误:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') LIMIT 0, 30' at line 3 
+0

您的查询与错误消息有所不同? –

+1

你不能只是编写语法 – Strawberry

回答

-1

这应该是你想要的语法:

SELECT name, expiration FROM table WHERE expiration 
    BETWEEN 
    CURRENT_DATE 
    AND 
    ADDDATE(CURRENT_DATE, INTERVAL 1 WEEK) 

(需要1周添加到当前为止,你不能只是指定的时间间隔站在自己的/作为一个参数之间)

+0

我试过了,但仍有一些错误: '#1064 - 你的SQL语法错误;检查对应于您的MySQL服务器版本的手册,以便在'第6行'LIMIT 0,30'处使用正确的语法' – Karol

+0

添加日期错误:http://prntscr.com/29hcwz – Karol

+0

@Karol:Edited答案,BETWEEN的synax也是错误的。 –

相关问题