SQL执行JOIN关联查询语句提示缺少关键字错误如何解决
错误根因
SQL报错是因为JOIN关联语法不完整,多表联合查询时,JOIN子句后必须搭配ON关键字指定两个表的关联匹配规则,不能直接跳转写WHERE过滤条件。
修正方案
先确认m_product和m_order_line两个表的关联字段,通常这类场景下关联字段为product_id,如果你的表结构中关联字段不同,替换对应字段即可。另外原SQL里多条件OR判断可以简化为IN写法,更易读:
SELECT order_id, ordered_quantity, product_description, standard_price FROM m_product -- 补充JOIN必备的ON关联条件 JOIN m_order_line ON m_product.product_id = m_order_line.product_id WHERE product_description IN ('End Table', 'Coffee Table', 'Dining Table') ORDER BY product_description;
额外注意事项
- 如果
order_id、ordered_quantity、standard_price这类字段在两个表中都存在,需要在字段前加表前缀指定来源,比如m_order_line.order_id,避免字段歧义报错。
内容的提问来源于stack exchange,提问作者Nadira Nuwan
相关产品推荐
相关产品推荐

