web-dev-qa-db-ja.com

MySqlストアドプロシージャ:プロシージャテーブルから選択する方法は?

テーブルから何かを選択するストアドプロシージャがあるとします。

 CREATE PROCEDURE database.getExamples()
 SELECT * FROM examples; 

この手順の結果を後の選択で使用するにはどうすればよいですか? (私はもう試した

 SELECT * FROM(CALL database.getExamples())

しかし、成功しません。)プロシージャでSELECT ... INTO outVariableを使用する必要がありますか?または、代わりにテーブルを返す関数を使用する必要がありますか?

25
Cambiata

このスレッドの質問を再構成しました: ストアドプロシージャ/関数はテーブルを返すことができますか? 。明らかに、一時テーブルを使用しないと不可能です。

6
Cambiata
CREATE TABLE #TempTable
(OID int IDENTITY (1,1),
VAr1 varchar(128) NOT NULL,
VAr2 varchar(128) NOT NULL)

Populate temporary table

INSERT INTO #TempTable(VAr1 , VAr2 )
SELECT * FROM examples
3
Dani