0
此查询的工作:SQL列名是关键字“类别”
SELECT product_name, unit_price, order_due_date
FROM orders
FULL OUTER JOIN products ON orders.product_id = products.product_id
WHERE product_name = 'bun';
,而这一次抛出一个错误:
ORA-00936: "missing expression"
SELECT product_name, unit_price, order_due_date
FROM orders
FULL OUTER JOIN products ON orders.product_id = products.product_id
WHERE [category] = 'soft drink';
我想不出有什么错第二
甲骨文不承认'['和'] '。 –
你可以在oracle中使用双引号:'WHERE'category'='soft drink';' –
'category'确实是一个关键字,因此使用它作为列名是一个非常糟糕的主意。但是,使用关键字(不是'reserved' - 列表要短得多)作为列名是不合法的,您可以在不转义列的情况下引用列名。您不需要方括号或双引号或任何类似的内容(除非您在创建表时使用双引号,在这种情况下,您必须使用双引号并与在查询中使用时的原始大写匹配)。 – mathguy