使用BETWEEN时发生SQL语法错误
我有一张叫票的桌子。然而,我试图在两个日期之间进行查询;我总是遇到语法错误。对于这个语法错误可能是什么,任何帮助都将不胜感激使用BETWEEN时发生SQL语法错误,sql,Sql,我有一张叫票的桌子。然而,我试图在两个日期之间进行查询;我总是遇到语法错误。对于这个语法错误可能是什么,任何帮助都将不胜感激 SELECT date FROM ticket WHERE date BETWEEN YEAR(ticket.date)=2011 AND MONTH(ticket.date)=11 AND DAY(ticket.date)=06 AND YEAR(ticket.date)=2011 AND MONTH(ticket.date)=11
SELECT date
FROM ticket
WHERE date BETWEEN YEAR(ticket.date)=2011 AND MONTH(ticket.date)=11 AND DAY(ticket.date)=06
AND YEAR(ticket.date)=2011 AND MONTH(ticket.date)=11 AND DAY(ticket.date)=12
您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行的“=2011、月(ticket.date)=11、日(ticket.date)=06和年(ticket.date)=20”附近使用的正确语法
date BETWEEN YEAR(ticket.date)=2011
没有任何意义。语法是
date BETWEEN start_range AND end_range
大概是这样吧
date BETWEEN '2011-11-06' AND '2011-11-12'
或者,由于您有一个时间组件,您应该完全避免在之间使用,而只使用
date >= '2011-11-06' AND date < '2011-11-13'
日期>='2011-11-06'和日期<'2011-11-13'
没有任何意义。语法是
date BETWEEN start_range AND end_range
大概是这样吧
date BETWEEN '2011-11-06' AND '2011-11-12'
或者,由于您有一个时间组件,您应该完全避免在
之间使用,而只使用
date >= '2011-11-06' AND date < '2011-11-13'
日期>='2011-11-06'和日期<'2011-11-13'
这是一个不正确的介于
之间的条款:
BETWEEN YEAR(ticket.date)=2011
它应该是这样的:
BETWEEN YEAR(ticket.date) AND 2011
这是一个不正确的BETWEEN
子句:
BETWEEN YEAR(ticket.date)=2011
它应该是这样的:
BETWEEN YEAR(ticket.date) AND 2011
我认为我们将采取以下措施:
"SELECT
date
FROM
ticket
WHERE
date BETWEEN '2011-11-06' AND 2011-11-12'"
你不应该像你那样使用中间人。您正在进行一次评估,而您的(我的)sql不支持这种评估。我认为我们可以这样做:
"SELECT
date
FROM
ticket
WHERE
date BETWEEN '2011-11-06' AND 2011-11-12'"
你不应该像你那样使用中间人。您正在进行的评估中,您的(我的)sql不支持该评估。请尝试以下操作:
SELECT date
FROM ticket
WHERE DAY(ticket.date) BETWEEN 6 AND 12
AND MONTH(ticket.date) = 11
AND YEAR(ticket.date) = 2011
试试这个:
SELECT date
FROM ticket
WHERE DAY(ticket.date) BETWEEN 6 AND 12
AND MONTH(ticket.date) = 11
AND YEAR(ticket.date) = 2011
您不能在中列出多个介于之间的值
将查询重写为:
SELECT date
FROM ticket
WHERE date BETWEEN '2011-11-06' and '2011-11-12'
您不能在中列出多个介于之间的值
将查询重写为:
SELECT date
FROM ticket
WHERE date BETWEEN '2011-11-06' and '2011-11-12'
这将非常缓慢,因为MySQL无法在该查询中使用索引。这将非常缓慢,因为MySQL无法在该查询中使用索引。我使用YEAR关键字,因为date字段中包含日期和时间,并且从我过去的一些查询中过滤出信息。@MasterP-只需使用WHERE date>=“2011-11-06”和date<'2011-11-13'
我之所以使用YEAR关键字,是因为date字段中有日期和时间,并且从我过去的一些查询中,它会过滤掉信息。@MasterP-只需使用其中date>='2011-11-06'和date<'2011-11-13'