ユーザーがページからさまざまなオプションを選択できるアプリがあり、背後にあるコードが SQL クエリを作成して関連するレコードを返します。
この場合、ユーザーは次を選択しています。
- 除算 != '1'
また、返されるレコードの Division が UserDivisions にある必要があるという自動制限もあります。これは、次のような変数です。
Division IS NULL OR Division IN ('1','1.1','1.1.1')
したがって、返されるレコードは、リストされた部門のいずれかに属しているか、値として NULL を持っている必要があります。
私のコードは現在、これらの制限を個別に処理しているため、最終的な SQL は次のようになります。
Select top 1000 Division, WoNum, WoType
From WorkOrder
Where (Division IS NULL OR Division IN ('1','1.1','1.1.1'))
AND (Division <> '1')
このクエリは、Division = '1.1' および '1.1.1' のすべてのレコードを返します。また、Division '1' のレコードは返されませんが、Division = Null のレコードも返されません。
NULL を返すようにこのクエリを作成するにはどうすればよいですか? また、上記のクエリが NULL を返さないのはなぜですか?