在 T-SQL 中执行相当于执行标量的最佳方法是什么?也就是说,使用SQL,在调用存储过程时,如何获取第一个结果集第一行的第一列?
编辑: 澄清一下,这只是使用 SQL,没有客户端语言。结果集可能类似于:
Id Description
--------------
1 foo
2 bar
我只想要一个变量中的“1”。
我知道如何做到这一点的唯一方法是使用临时表(未经测试,但你明白了):
INSERT #TempTable EXEC MyStoredProcedure
DECLARE @id INT;
SELECT TOP(1) @id = Id FROM #TempTable