如何仅在存储过程中有值时才显示结果集


DECLARE @ONYX_ID INT
DECLARE cur CURSOR FOR 
SELECT iIndividualID 
FROM [ONYX_KAPLAN].[dbo].[Individual]
WHERE iIndividualID  <= 1010918
OPEN Cur
FETCH NEXT From cur INTO @ONYX_ID
WHILE @@FETCH_STATUS = 0
BEGIN
----How to say not to create result set if no value-----------
---Unable to create temp table in this database-------
EXEC csprgCustomerProduct_TranscriptItem_KAP  @ONYX_ID
FETCH NEXT FROM Cur INTO @ONYX_ID
END
CLOSE Cur
DEALLOCATE Cur

根据我的理解,如果csprgCustomerProduct_TranscriptItem_KAP不返回任何记录,您不希望结果集。

因此,您可以在过程的结果集中使用 IF EXISTS。如果返回查询中存在任何记录,则它应该给出结果,否则没有结果集。

最新更新