0

編集:

検索ストアド プロシージャがあります。ストアド プロシージャは、@filter1、@filter2 などの名前のビット パラメータを受け取ります。パラメータは、コンテキスト フィルタがプロシージャによって返されるかどうかを示します。ただし、プロシージャはエラーを返す可能性があります。何かのようなもの:

if error
    select * from erros
else
    select 0

if filter1
    select * from tablea
else
    select 1

select * from search

select 0andステートメントはselect 1、検索を同じ位置に保つためだけに存在しますが、テーブルの内容をチェックしてエラーがあるかどうかを確認し、いくつかのフィルター パラメーターを評価する必要があるため、バックエンドでスパゲッティ コードが少し発生します。私のオブジェクトを適切に構築するために。テーブル内の行数を確認する方が簡単です。

私の質問は、 select 0 および select 1 ステートメントを回避するために空のデータセットを返す安価な方法はありますか?

4

1 に答える 1

1

これを試して

select top 0 * from tablea
select top 0 * from tableb

TableAとの列を持つ空の行が返されますTableB

于 2012-06-14T03:21:47.833 に答える