という列があるテーブルがありますallocated_to
。その列に値がある場合、それは行のステータスがassigned
それ以外であることを意味しますunassigned
。
私の検索ボックスから、私は割り当てられていない人1
のためassigned
に送信しています。また、という名前の列に対して、0
さらに2つの同様のチェックがpending
あります。closed
SignOff (type: int)
これで、合計 9 つの検索条件ができました
1. Pending
2.Closed
3. Unassigned
4. Assigned
5. Pending + Unassigned
6. Pending + Assigned
7. Closed + Unassigned
8. Closed + Assigned
9. For all records irrespective of any statuses.
では、クエリに条件を追加するにはどうすればよいですか。実際には、SP の変更と、そのための SP は既に稼働しています。そのため、クエリを動的にするなどして、クエリに大きな変更を加えることはできません。
ここでサンプルを提供できます。私のクエリは次のようになります。
If Some_Condition
begin
Select x,y,zfrom T1 join T2 on t1.a=t2.b
Where IsNull(SignOff,0)=@ParamForPendingAndClosed
end
ここで、上記の 9 のチェックを追加したいと思います。
ご注意ください:
すべての if-else 条件で行う必要があるため、大きな変更を行うことはできません。それ以外の場合、ヘッダーの状態に応じて、クエリはほぼ 4 ~ 5 になります。それ以外は大歓迎です。