条件がたくさんある場合、すべてを 2 回入力するのは面倒です。2 つのより良い代替手段を次に示します。
SELECT TOP 30 FROM Mails
WHERE COALESCE(assignedByTeam,'') <> 'team01'
COALESCE 演算子は、リスト内の最初の null 以外の値を返します。assignedByTeam が null でない場合は、assignedByTeam の値を「team01」と比較します。ただし、assignedByTeam が null の場合、空白の '' と 'team01' が比較されます。これは基本的に次の省略形です。
SELECT TOP 30 FROM Mails
WHERE (CASE WHEN assignedByTeam IS NULL THEN '' ELSE assignedByTeam END) <> 'team01'
2 番目の方法は、条件を条件付きにすることです。次に例を示します。
SELECT TOP 30 FROM Mails
WHERE 1 = CASE WHEN assignedByTeam = 'team01' THEN 0 ELSE 1 END
この例では、「team01」と等しくないため、ELSE 値にはすべての null 行が含まれます。