web-dev-qa-db-ja.com

SQLCTEでストアドプロシージャを呼び出す

SQL CTEステートメント内でストアドプロシージャを実行できますか?私はSQLCTEクエリに少し慣れていません...

28
user167698

いいえ、ごめんなさい。ステートメントのみを選択します

ストアドプロシージャの出力(結果セット)を使用する必要がある場合は、一時テーブルになります

CREATE TABLE #foo (bar int...)

INSERT #foo (bar, ...)
EXEC myStoredProc @param1...

-- more code using #foo
29
gbn

テーブル変数を使用することもできます:

DECLARE @tbl TABLE(id int ,name varchar(500) ,...)      
    INSERT INTO @tbl        
    EXEC myprocedure @param ..

with cte as (
    SELECT * FROM @tbl  
)
select * from cte
1