SQL で select ステートメントを作成していますが、case ステートメントまたは if else ステートメントを含む where 句を作成しようとして問題が発生しています。変数の値に基づいてレコードを選択したいと考えています。変数が「True」の場合、列が null である select ステートメントからのレコードのみが返されます。変数が「True」でない場合、その列が null であるかどうかにかかわらず、すべてのレコードを返します。
これを行う方法に関するヒントはありますか?
以下は、私がやろうとしていることの簡単な例です:
declare @option1 as varchar(5)
--This can be True or False so to test i just put the Set option below
set @option1 = 'True'
Select a,b,c,d...
from ...
where d = case when @option1 = 'True' then NULL End
これは私が何をすべきかわからない部分です。変数が「True」の場合にのみレコードを除外する必要があるため、ケースのelseセクションに何を入れればよいかわかりません。