我有两张桌子。员工(查找)表包含 empl_id 和 empl_name 以及其他字段。订单(主)表包含 order_nbr、cashier_id、cashout_id 和 driver_id。这些都包含与员工表中的 empl_id 的匹配。
如何在订单报告中显示收银员姓名、收银员姓名和司机姓名?
使用左连接来匹配empl_id的cashier_id并且可以工作,但是我无法正确打印cashout和驱动程序名称,总是在所有三列中显示cashier_is的名称。
您应该能够为每个所需的“员工姓名”添加所需的联接:
select
o.order_id,
o.empl_id, e1.empl_name,
o.cashier_id, e2.empl_name as cashier_name,
o.driver_id, e3.empl_name as driver_name
from
orders o
left join employees e1
on o.empl_id = e1.empl_id
left join employees e2
on o.cashier_id = e2.empl_id
left join employees e3
on o.driver_id = e3.empl_id