2012-05-23 4 views
17

Scalar Functionを使用しているときに、CASEの文でNULLを確認するにはどうすればよいですか?スカラー関数を使用してCASE文でNULLをチェックする方法は?

私の元のクエリでした...しかし、それは...

SELECT CASE dbo.fnCarerResponse('') 
      WHEN NULL THEN 'Pass' 
      ELSE 'Fail' 
     END 

が、私はそうのように、 IS NULLの使用について SO質問を読ん

SELECT CASE dbo.fnCarerResponse('') IS NULL 
      WHEN NULL THEN 'Pass' 
      ELSE 'Fail' 
     END   

失敗したが、これはincorrect syntax near the keyword isエラーが発生します

CASEScalar Functionがありますか?

答えて

24

あなたはCASEの間違ったスタイルを使用している - あなたはCASE WHEN <expression> THENないCASE <expression> WHEN <expression> then使用する必要があります。

SELECT CASE 
WHEN dbo.fnCarerResponse('') IS NULL 
THEN 'Pass' 
ELSE 'Fail' 
END 
+0

DOHを...ポインタ – SteveC

6
SELECT CASE 
     WHEN dbo.fnCarerResponse('') IS NULL 
     THEN 'Pass' 
     ELSE 'Fail' 
     END 
+0

DOHのためのおかげで...ポインタに感謝を – SteveC

4
SELECT CASE 
      WHEN dbo.fnCarerResponse('') is NULL THEN 'Pass' 
      ELSE 'Fail' 
     END 
+0

DOH ...ポインタのおかげで – SteveC

関連する問題