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

kir*_*lmi 5 sql sql-server stored-procedures reporting-services

这是示例存储过程

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

SELECT * 
FROM @ReturnTable
Run Code Online (Sandbox Code Playgroud)

不允许在存储过程中进行修改,我只需要通过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
Run Code Online (Sandbox Code Playgroud)

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

有没有其他方法?请帮忙

Bac*_*cks 1

使用临时表:

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

SELECT WrongUSSD
FROM #TempTable
Run Code Online (Sandbox Code Playgroud)