2012-12-18 41 views
2

我有一個SQL查詢設置列的一些值,如果嵌套查詢返回null

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我想給其他標識代替嵌套查詢。

例如,如果嵌套查詢返回null,則返回s.id = '13',類似的東西。

嘗試了幾件事情,但他們沒有解決。

回答

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

OR

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

編輯:在大量的行,ISNULL似乎更快。但是,它不是SQL標準的一部分 - 正如ISNULL vs COALESCE的一些答案所表明的那樣。

+0

thnx ...它的工作.. – Rahul

相關問題