Stored Procedure and populating a Temp table from a linked Stored Procedure with parameters

后端 未结 5 2247
轻奢々
轻奢々 2020-12-19 08:02

I have a Stored Procedure (SP) in which I pass in one value. In this SP, I am trying to create/populate a Temp Table from the result of another SP that is on a Linked/remote

5条回答
  •  轻奢々
    轻奢々 (楼主)
    2020-12-19 08:27

    I use this method quite frequently:

    DECLARE @YEAR AS VARCHAR(4)   SET @YEAR = 2015
    DECLARE @SQL AS VARCHAR(MAX)
    DECLARE @OPENQUERY AS VARCHAR(MAX)
    DECLARE @LINKEDSERVER AS VARCHAR(MAX) SET @LINKEDSERVER = 'Name of Linked Server here with out brackets'
    
    SET @SQL='
    Select 
    tbl1.* 
    FROM 
    dbo.Table_ON_LINKED_SERVER AS tbl1 
    WHERE 
    tbl1.number_id = ''''1'''' 
    AND YEAR(tbl1.DATETIME) = ' + @YEAR + '
    AND tbl1.NAME <> ''''%JONES%''''
    '''
    
    SET @OPENQUERY = 'SELECT * INTO ##GLOBAL_TEMP_NAME FROM OPENQUERY(['+ @LINKEDSERVER +'],''' + @SQL + ')'
    --SELECT @OPENQUERY
    EXEC(@OPENQUERY)
    

提交回复
热议问题