SQL Server:如何从存储过程中获取特定列而不进行修改

这是示例存储过程

DECLARE @ReturnTable TABLE (DateTime DATETIME,      
                            WrongUSSD VARCHAR(30),
                            AllMSISDN INT,      
                            UniqueMSISDN INT,   
                            SubscriptionActivated INT)

SELECT * 
FROM @ReturnTable

不允许在存储过程中进行修改,我只需要通过select语句在此过程中使用特定的列.

我试过这个

select WrongUSSD 
FROM openrowset('MSDASQL', 'Driver={SQL SERVER}; Server=server_name;UID=user; PWD=pass;Trusted_Connection=yes;', 'EXEC [DatabaseName].[dbo].[ProcedureName] "2016-01-01","2016-04-01"') as a

如果存储过程中存在链接服务器,则此方法不起作用

有没有其他方法?请帮忙

最佳答案
使用临时表:

INSERT INTO #TempTable
EXEC [dbo].[ProcedureName]

SELECT WrongUSSD
FROM #TempTable

转载注明原文:SQL Server:如何从存储过程中获取特定列而不进行修改 - 代码日志