I want to do this but with stored procedure results:
select * from table where column=whatever
except
select * from table2 where column=whatever
so
exec sp1 args
except
exec sp2 args
my sps don't have return values they just take arguments and return the results of select statements
And if try to use the SELECT statement with the procedure execution statement, the SQL Server will return an error. But still, there are two ways through which we can select some columns from the stored procedure result.
A stored procedure in SQL Server does not return a table directly neither we can directly select data from a stored procedure. But, for this implementation, we can use a SELECT statement within a stored procedure to return table data, and then we can use table variables to store the data returned from a stored procedure.
If you are using .Net Framework application to call the stored procedure then take a look at SQLCommand.ExecuteNonQuery. This just executes stored procedure with no results returned. If problem is at SQL Server level then you are going to have to do something different (i.e. change the stored procedure).
If multiple such SELECT statements are run during the execution of the stored procedure, multiple result sets will be sent to the client. This behavior also applies to nested TSQL batches, nested stored procedures and top-level TSQL batches. Examples of Returning Data Using a Result Set
Give this a go.
CREATE PROCEDURE usp_sp1_Except_sp2
@sp1 args --<-- All the params sp1 Expects
@sp2 args --<-- All the params sp2 Expects
AS
BEGIN
SET NOCOUNT ON;
IF OBJECT_ID('tempdb..#SP1_Results') IS NOT NULL
DROP TABLE #SP1_Results
IF OBJECT_ID('tempdb..#SP2_Results') IS NOT NULL
DROP TABLE #SP2_Results
CREATE TABLE #SP1_Results
(
-- Define table structure here
)
CREATE TABLE #SP2_Results
(
-- Define table structure here
)
INSERT INTO #SP1_Results
EXECUTE dbo.sp1 @sp1
INSERT INTO #SP2_Results
EXECUTE dbo.sp2 @sp2
SELECT * FROM #SP1_Results
EXCEPT
SELECT * FROM #SP2_Results
SET NOCOUNT OFF;
END
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With