従業員 ID の値または従業員名の値でデータを選択できるようにするというユーザー リクエストがありました。どちらも要求されない場合は、すべての従業員をプルします。
私の最初の衝動は、次の 2 つの変数を作成することでした@EmpID
。@Name
それから
select a,b,c,d,e
where
(
c between date1 and date 2
and
d > 0
)
and
(
a in (@EmpID)
or
b = @Name
)
@Empid
またはの値を指定するとうまくいきます@Name
。
私が理解できないのは、 if @EmpID is null
and を全員に返す方法@Name is null
です。