テーブル値パラメーターを取り込み、それを IN ステートメント内で使用して結果を取得するストアド プロシージャを設定しようとしています。問題は、テーブル値パラメーターが空になる可能性があることです。方法はありますか? and ステートメント全体を条件付きで挿入する
declare @var int
--insert @var
declare @tvp tvp
--insert stuff (or not) into @tvp
SELECT t.foo1, t.foo2, t.foo3
FROM dbo.t t
WHERE t.foo4 = @var
IF(EXIST (SELECT 1 FROM @tvp))
AND t.foo1 IN (SELECT @tvp.foo1 FROM @tvp)
これは私が概念的に目指しているものですが、これを行う適切な方法について何か助けはありますか?