2014-09-30 45 views
0

我有一個小問題。MSSQL - 沒有結果或NULL

我正在從表中選擇。我希望看到僅在我的工作流程的一點中使用的值。在此之前,沒有任何價值。

但是,如果沒有結果,那麼我的「結果」是NULL。那對我不好。

我的意思是,如果我寫

SELECT myValue FROM myTable WHERE asd = 'thisIs' 

myValue是表NULL,那麼我的結果是NULL。沒關係。 當沒有找到結果時,那麼我的結果也是NULL。那不好。

如果沒有結果我做了不同的功能。 我怎樣才能分開這些?

|MyValue| 
---|-------| 
1 |NULL | 
---|-------| 


    |MyValue| 
---|-------| 


    |MyValue| 
---|-------| 
1 |Hello | 
---|-------| 

在第一和第三種情況下,我必須調用Update函數,在第二種情況下,我必須調用Insert函數。

但是我的SP在第一和第二種情況下發回的結果也是NULL。

非常感謝您的幫助。

+0

您需要發佈任何信息,否則無法提供幫助。 – DavidG 2014-09-30 09:19:28

+1

使用'IF EXISTS',然後你做你想要的'ELSE'一些不同的功能...... – Darka 2014-09-30 09:20:38

回答

1

據我瞭解你想要做這樣的事情:

IF EXISTS (
SELECT myValue FROM myTable WHERE asd = 'thisIs' 
) 
BEGIN 
    SELECT myValue FROM myTable WHERE asd = 'thisIs' 
END 
ELSE 
BEGIN 
    EXEC SomeOtherCode 
END 
0

你可以指望選擇記錄查詢後發現的行數。如果count大於或等於1,則必須運行更新查詢,否則插入查詢,因爲所選記錄爲空。

相關問題