为什么这个简单的查询不起作用。在升级我的mysql版本之前我知道它没关系。我知道我在新版本中有一些语法更改。但这是简单的查询没有加入,但不起作用。
SELECT * FROM ship WHERE sensitive='Y' and entry_date between $startdate and $enddate
请帮帮我。
修改
从mysql4升级到mysql5,错误是'语法错误'
答案 0 :(得分:2)
我认为你从mysql 4升级到了5。敏感是mysql5中的新reserved keyword。在查询中使用它时,需要将其括在反引号(`)中。 Mysql 5允许使用保留字进行查询但使用反引号。
尝试:
SELECT * FROM ship WHERE `sensitive`='Y' and entry_date between $startdate and $enddate
答案 1 :(得分:0)
'$ start date'中有“space”字符。这可能是一个原因。所以,如果$ startdate和$ enddate是时间戳:
SELECT * FROM ship WHERE `sensitive`='Y' and entry_date between $startdate and $enddate
如果它们不是时间戳,但是以iso格式表示日期,但它们用单引号。