我有4个表SQL选择其中不存在
branch target target_dept dept
-------- --------- ----------- --------
branch_id target_id target_id dept_id
branch_name branch_id dept_id dept_name
我想选择与部门所有分支机构有关系 我在这里查询
select b.branch_id, b.branch_name,dept.dept_name
from branch b
left join target ptar on ptar.branch_id=b.branch_id
left join target_dept pdept on pdept.target_id=ptar.target_id
left join dept dept on pdept.dept_id=dept.dept_id
我得到了我想要得到与查询。比方说像这样的输出(有在部门5个数据)
B001 | KUALA LUMPUR | DEPT1
B001 | KUALA LUMPUR | DEPT2
B002 | BALI | DEPT3
B002 | BALI | DEPT4
B002 | BALI | DEPT5
B003 | MANILLA |
,我想获得与部门是说好的任何关系尚未分支,所以我用不存在这样的查询
select b.branch_id, b.branch_name,dept.dept_name
from branch b
left join target ptar on ptar.branch_id=b.branch_id
left join target_dept pdept on pdept.target_id=ptar.target_id
left join dept dept on not exists(select null where pdept.dept_id=dept.dept_id)
我想要得到的输出是这样的
B001 | KUALA LUMPUR | DEPT3
B001 | KUALA LUMPUR | DEPT4
B001 | KUALA LUMPUR | DEPT5
B002 | BALI | DEPT1
B002 | BALI | DEPT2
B003 | MANILLA | DEPT1
B003 | MANILLA | DEPT2
B003 | MANILLA | DEPT3
B003 | MANILLA | DEPT4
B003 | MANILLA | DEPT5
但我真的得到的输出是不是我真正想要
添加样品表数据及其预期结果。 (以及格式化文本。) – jarlh
请标记您的dbms –