下面的查询让我失望。这是一个简单的查询,但在 where 子句中给出了错误。
我试图从我的订单表中得到延迟的订单。
SELECT * FROM orders where delayed='Y'
这里有什么问题?
DELAYED
是 MySQL 关键字(如 中INSERT DELAYED
),因此您需要将“延迟”列包含在反引号中:
SELECT * FROM orders where `delayed`='Y'
请注意,这些是反引号,而不是撇号。
尝试这个:
SELECT * FROM orders where `delayed`='Y'
尽管反引号选项有效,并且也适用于带有空格的字段名称,但在我看来,最好尽可能避免使用此类表名。不是因为反引号本身,它们是无害的,而是因为约定。保留字不打算用作标识符,因为......它们是保留的!
干杯!