根据sql server中的条件返回空行

时间:2012-06-12 18:36:34

标签: sql-server-2008

编辑:

我有一个搜索存储过程。存储过程接收一些名为@ filter1,@ filter2等的位参数。这些参数指示过程是否返回上下文过滤器。然而,该过程可以返回错误。类似的东西:

if error
    select * from erros
else
    select 0

if filter1
    select * from tablea
else
    select 1

select * from search

select 0select 1语句只是为了将搜索保持在同一位置,但它们会在后端产生一些意大利面条代码,因为我必须检查表内容到弄清楚是否有错误并评估几个过滤器参数以便正确构建我的对象。检查表格中有多少行是比较简单的。

我的问题是,是否有一种非常昂贵的方法来返回空数据集以避免选择0和选择1语句?

1 个答案:

答案 0 :(得分:1)

试试这个

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

这将返回包含TableATableB

列的空行