을하지 않고 case 문을 작성할 수 있습니다우리는 내가이 쿼리가 다른 문
select case when id=1 then 'A'
when id=2 then 'B'
end
from test
이건의
B에게 이드가
로/P O를
NULL 날을주고있다을
NULL
NULL
내 출력에 NULL
값을 갖고 싶지 않습니다. 단지 A와 B 만 비교하려고합니다. case 문에서 가능합니다.
을하지 않고 case 문을 작성할 수 있습니다우리는 내가이 쿼리가 다른 문
select case when id=1 then 'A'
when id=2 then 'B'
end
from test
이건의
B에게 이드가
로/P O를
NULL 날을주고있다을
NULL
NULL
내 출력에 NULL
값을 갖고 싶지 않습니다. 단지 A와 B 만 비교하려고합니다. case 문에서 가능합니다.
case
표현식은 표현식의 값만 조작 할 수 있으며 결과에서 행을 제거하지는 않습니다. 이 결과에서 null
의를 생략하려는 경우, 당신은 where
절을 추가해야합니다 : ID = 1 일, ID = 2 일 다른와 다른 사람 :
SELECT CASE WHEN id = 1 THEN 'A'
WHEN id = 2 THEN 'B'
END
FROM test
WHERE id IN (1, 2) -- HERE
WHERE
절을 사용하여 출력을 제한 할 수 있습니다.
SELECT CASE WHEN id=1 THEN 'A'
WHEN id=2 THEN 'B'
END
FROM test
WHERE id IN (1,2)
아니면 CASE
문 내부 else
부분을 사용하는 대신 null
의 다른 값을 보여 싶어합니다.
SELECT CASE WHEN id=1 THEN 'A'
WHEN id=2 THEN 'B' ELSE 'Invalid'
END
FROM test
테스트 테이블은 5 개 행이 값. WHERE 조건을 지정하지 않으면 결과 집합은 항상 5 개의 행으로 구성됩니다. 따라서 WHERE 조건이 필요한 행 수를 제한해야하는 경우 그러나 그것은 CASE 절과 관련이 없습니다. (그 자체로) 결과 집합을 어떤 식 으로든 제한하지 않기 때문입니다. – Insac