私はこのクエリを持っています:
select case when id=1 then 'A'
when id=2 then 'B'
end
from test
私にo/pを与えています
Id
A
B
ヌル
ヌル
ヌル
出力にNULL
値を含めたくありません。AとBでのみ比較したいのですが、caseステートメントで可能です。
case
式は式の値のみを操作でき、結果から行を削除できません。結果からnull
sを省略したい場合は、where
句を追加する必要があります。
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)
または、null
の代わりに他の値を表示する場合は、else
ステートメント内でCASE
部分を使用します。
SELECT CASE WHEN id=1 THEN 'A'
WHEN id=2 THEN 'B' ELSE 'Invalid'
END
FROM test