行を返すストアド プロシージャがあります。
CREATE PROCEDURE MyProc
AS
BEGIN
SELECT * FROM MyTable
END
実際の手順はもう少し複雑なので、ストアド プロシージャが必要になります。
この手順を呼び出して出力を選択することは可能ですか?
何かのようなもの:
SELECT * FROM (EXEC MyProc) AS TEMP
SELECT TOP X
データをページングするには、、ROW_NUMBER
および追加の句を使用する必要がありますWHERE
が、これらの値をパラメーターとして渡すことは望ましくありません。
ベストアンサー1
あなたはできる
- ストアドプロシージャからの結果セットを保持するテーブル変数を作成し、
- ストアドプロシージャの出力をテーブル変数に挿入し、
- テーブル変数は、他のテーブルとまったく同じように使用します...
...SQL ....
Declare @T Table ([column definitions here])
Insert @T Exec storedProcname params
Select * from @T Where ...