SQL查询内部加入+额外条件和

时间:2013-05-27 13:15:53

标签: inner-join

我有2张桌子,Angestelle和LogDocAction。如果

,我需要两个表的所有内容
Angestellte.ID = LogDocAction.User_ID

但如果User_ID为0,我也需要LogDocAction(不是Angestelle)的所有内容。

我试过了:

logAction.Open "SELECT * FROM Angestellte INNER JOIN LogDocAction ON Angestellte.ID = LogDocAction.User_ID OR LogDocAction.User_ID = 0 ORDER BY LogDocAction.time DESC;", userDB, 1, 3

但这并不像我想的那样有效。 User_ID = 0的条目被取出5次。 :/

为什么我不使用2个查询?我需要在ASP中为表格排序的条目,并且不知道如何以另一种方式进行。

有谁知道如何解决这个问题? 问候!

1 个答案:

答案 0 :(得分:1)

尝试:

SELECT A.*, L.* 
FROM LogDocAction L
LEFT JOIN Angestellte A ON A.ID = L.User_ID 
WHERE A.ID IS NOT NULL OR L.User_ID = 0 
ORDER BY L.time DESC