2016-06-22 5 views
2

) TypeATypeB의 두 가지 유형이 있습니다. 나는에 문제가 있습니다IIF에서 필드 IS NULL (

SELECT 
    * 
FROM 
    TypesTable 
WHERE 
    Series1 = 'A3bBa#$#0sB2' 
AND 
    Series2 = IIF(Type != 'TypeB', 'vH2f##gYtL&', NULL); 

: - Series1

TypeBSeries2 하나의 시리즈를 가지고 - 아래

Series1 내가 가지고 올 관리 쿼리가

TypeA

두 개의 시리즈가 있습니다 Series2 = IIF(...) 부분

호 w 내가

경우 Type = TypeA, Series2 사용자

Type = TypeB 경우에 의해 주어진 Series2 값과 동일한 것을 내 쿼리를 말할 수 Series2 나는 경우 Type == 'TypeB'Series2 이후 IIF으로 힘든 시간을 보내고 있어요

NULL입니다 Series2 IS NULL이 아니고 Series2 = NULL

답변

1

WHERE 절의 조건 확인을 연장해야합니다.

SELECT 
    * 
FROM 
    TypesTable 
WHERE 
    Series1 = 'A3bBa#$#0sB2' 
AND 
    ((Type = 'TypeA' AND Series2 = 'vH2f##gYtL&') OR (Type = 'TypeB' AND Series2 IS NULL)) 
+0

내 문제가 해결되었습니다. 정말 고맙습니다 – TheQuestioner