我有三张表,如下面
tbl_asset_reg
barcode | emp_id |port_id |floor
----------|----------------|------------|------
1 | emp1 | 0 |7th
2 | 0 | 12 |20th
3 | emp2 | 0 |5th
tbl_asset_Transfer
barcode | emp_id |port_id |floor
----------|----------------|------------|------
1 | emp3 | 0 |20th
2 | 0 | 12 |20th
4 | emp2 | 0 |5th
tbl_employee
emp_id | emp_name company |department
----------|----------------|--------------|------
emp1 | sa | abc |finance
emp2 | ra | cdf |finance
emp3 | rom | abc |it
我想从tbl_asset_Transfer得到所有条形码和详细信息左外连接tbl_asset_reg.my问题是当我通过左外连接得到结果如何从tbl_employee获取相应的emp_name和公司。请帮忙
答案 0 :(得分:1)
假设某些资产没有分配员工(emp_ID = 0)
SELECT *
from tbl_Asset_Transer tat
LEFT JOIN tbl_asset_Reg tar
ON tat.barcode = tar.barcode
LEFT JOIN tblEmployee TE
on (TE.Emp_ID = Tar.Emp_ID and TE.Emp_ID=tat.empID)
OR (TE.Emp_ID = tat.emp_ID and tat.empID is null)
虽然看起来丑陋似乎可能更好地联合资产表然后加入,因为他们apear具有相同的结构只取决于你想要的输出。