2

我有一个 SQL 查询

SELECT s.id,
       s.First_Name +' '+s.Last_Name AS Name,
       d1.Department_Name,
       s.Manager_Id,
       s.EmailId
FROM Fin_UserMaster s
INNER JOIN Fin_Department_Master AS d1 ON d1.id = s.Department_Id
WHERE s.id =
    (SELECT Manager_Id
     FROM Fin_UserMaster
     WHERE id= '13')

现在,如果我的嵌套查询返回 null,我想给出另一个 Id 来代替嵌套查询。

例如,如果嵌套查询返回 null then s.id = '13',类似的事情。

尝试了几件事,但没有成功。

4

1 回答 1

4
(select COALESCE(Manager_Id, 13) from Fin_UserMaster where id= '13')

或者

(select ISNULL(Manager_Id, 13) from Fin_UserMaster where id= '13')

编辑:在大量行上,ISNULL似乎更快。但是,它不是 SQL 标准的一部分——正如 ISNULL 与 COALESCE 上的一些答案所暗示的那样。

于 2012-12-18T08:01:57.563 回答