编辑:
我有一个搜索存储过程。存储过程接收一些名为@filter1、@filter2 等的位参数。这些参数指示过程是否将返回上下文过滤器。然而,该过程可能会返回错误。就像是:
if error
select * from erros
else
select 0
if filter1
select * from tablea
else
select 1
select * from search
select 0
and语句只是为了将select 1
搜索保持在同一位置,但它们会在后端导致一些意大利面条代码,因为我必须检查表格内容以确定是否存在错误并评估几个过滤器参数为了正确构建我的对象。检查表中有多少行更简单。
我的问题是,是否有一种不昂贵的方法来返回一个空数据集以避免选择 0 和选择 1 语句?