我正在处理 3 个表 sales、customer 和 product,我想在同一结果集中从 sales 表和 customer_name、customer age 和 product_name、product 表中的所有列中获取所有列。有一个条件,我必须使用 2 个连接操作,其中一个连接将在子查询内部,另一个在子查询外部。 这是我的查询不起作用:
SELECT a.*,
b.customer_name,
b.age,
b.customer_id
FROM sales AS a
LEFT JOIN customer AS b on a.customer_id = b.customer_id
LEFT JOIN (SELECT product_id, product_name, category from product) as c
ON a.product_id = c.product_id
ORDER BY a.customer_id, b.customer_id;
只有第一个联接在此查询中起作用。
答案 0 :(得分:0)
select
a.*,
b.customer_name,
b.age,
b.customer_id ,
c.*
from sales as a
left join customer as b
on a.customer_id = b.customer_id
LEFT JOIN (SELECT product_id, product_name, category from product) as c
ON a.product_id = c.product_id
order by a.customer_id;