我有一个包含两部分的SQL查询 1)调用存储过程并填充临时表中的数据(使用openXML函数) 2)与此表和结果集
连接的sql的另一部分目前,当我执行存储过程时,它返回两个结果集。但它应该只返回第二个结果集而不是临时表结果集。
我的Visual Studio代码默认选择第一个结果集,而所需的结果集是第二个。 sql如下:
@SQL = 'Create table #TempTable (YearEntry int, Quarter int) insert into #TempTable exec CreateTableFromXML @YearQuarterList ' +
' Select * from ABCD inner join #TempTable T on T.YearEntry = A.Year '
它应该仅返回A表中的所有列,而它会返回
#TempTable and all the columns from A Table.
有人可以指导我如何只获取返回A表中所有列的结果集。
感谢
答案 0 :(得分:1)
而不是
' Select * from ABCD inner join #TempTable T on T.YearEntry = A.Year '
使用
' Select ABCD.* from ABCD inner join #TempTable T on T.YearEntry = A.Year '
所以你要指定所有表ABCD,而不是连接中的所有内容。
答案 1 :(得分:0)
第一个结果集是否只是由INSERT语句产生的(# row(s) affected)
消息?尝试添加SET NOCOUNT ON;
作为批次的第一个陈述,看看是否有帮助。