在我的表日历中,我有三列(sal,esal,pt)和任何一列具有指向另一个表的id。我想加入sal,esal和pt if和仅当id存在时。 例如:
calendar table
--------------
id sal esal pt
1 0 10 0
2 0 0 11
3 12 0 0
4 0 13 0
答案 0 :(得分:0)
您可以在join语句中添加条件。像这样:
SELECT *
FROM calendar a
LEFT JOIN table_sal b ON a.sal = b.id AND a.sal > 0
LEFT JOIN table_esal c ON a.esal = c.id AND a.esal > 0
LEFT JOIN table_pt d ON a.pt = d.id AND a.pt > 0
如果ID不大于0
,则不会进行联接