基于条件

时间:2017-08-01 10:10:04

标签: sql sql-server-2012

希望你能帮助我查询。

我有两个表,我想从中生成视图,但我希望根据某些条件发生这种情况。

enter image description here

所以基本上我希望有一个使用tbl02覆盖tbl01中现有ldap级别的视图。

如果TBL02中存在user02,则使用其中的级别而不是来自tbl01的级别。

2 个答案:

答案 0 :(得分:3)

只需使用左外连接并使用ISNULL显示来自TBL02的lvl,除非它不存在然后使用来自TBL01的lvl。

SELECT TBL01.ldap, ISNULL(TBL02.lvl, TBL01.lvl), TBL01.Firstname, TBL01.LastName
FROM TBL01
LEFT OUTER JOIN TBL02 ON TBL01.ldap = TBL02.ldap

答案 1 :(得分:1)

只需使用连接并从第二个表中获取级别,我相信它会起作用。

SELECT a.ldap, b.lvl, a.Firstname, a.Lastname FROM TBL01 a JOIN TBL02 b ON a.ldap = b.ldap
相关问题