我有一个存储过程,它返回多个记录集以在应用程序中使用。有时其中一些记录集是空的。
我想减少开销,只返回那些有 1 行或更多行的。
我的问题是 - 我怎样才能只返回那些有行的记录集?
应用程序只需要 0 个或多个记录集,然后循环遍历每个记录集,然后将它们打印出来。
我知道我可以在应用程序代码中跳过它们,但我试图阻止它们被返回,如果它们为空的话。
程序很简单:
CREATE PROCEDURE bfsp_PROC_NM
AS
BEGIN
SELECT * FROM TABLE_1
SELECT * FROM TABLE_2
SELECT * FROM TABLE_3
RETURN
END
GO
在实际过程中,有些查询很昂贵,所以我不想测试查询,如果它返回一行或更多,请再次执行......因为它太昂贵了。