【发布时间】:2015-05-06 05:53:53
【问题描述】:
我对一些高级的 MySQL 查询比较陌生。我一直在尝试使用以下 MySQL 查询使用 MySQL SELECT 语句查询特定用户的订单表中的最新订单。
SELECT o1.* FROM order AS o1
WHERE o1.orderDateTime =
(
SELECT MAX(o2.orderDateTime) FROM order AS o2
WHERE o2.userId = '1'
)
但我一直收到以下与 MySQL 语法相关的 MySQL 错误 #1064。
#1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“order AS o1 WHERE o1.orderDateTime = (SELECT MAX(o2.orderDateTime)FROM order AS”附近使用正确的语法
我遇到了与 INSERT 语句相关的类似错误,但我设法使用MySQL 1064: You have an error in your SQL syntax 中指定的方法修复它 我尽一切努力修复当前情况下的查询,但仍然没有成功。
如果有人能帮我解决上面指定的 SELECT 子句的这个 MySQL 语法错误,我将不胜感激。如果有人也可以指定我发生此问题的确切原因,那就太好了。
【问题讨论】:
-
order是保留字,使用后缀转义