proc1 と proc2 という 2 つのプロシージャがあります。ある mysql プロシージャを別のプロシージャ内で呼び出しています。
proc1 では、proc2 の値を proc1 一時テーブルに挿入したいと考えています。proc2 は 2 つの列を返しますが、proc1 一時テーブルには 1 つの列のみを挿入したいと考えています。
Proc2 の出力は次のとおりです。
Hrs(Timestamp) Status
09:30 IN,OUT,IN,OUT
04:30 IN,OUT
07:30 IN,OUT,IN,OUT
04:25 IN,OUT
Proc1 コード
CREATE PROCEDURE Proc1()
BEGIN
DROP TABLE IF EXISTS TempWorkedHrs ;
CREATE TEMPORARY TABLE TempWorkedHrs(WorkedHrs TIMESTAMP);
INSERT INTO TempWorkedHrs(WorkedHrs)
CALL Proc2();
SELECT SUM(WorkedHrs) INTO @TotalHrs
FROM TempWorkedHrs;
END //
proc1 の一時テーブルに値を挿入する場合、proc2 の 2 番目の列は重要ではありません。
Q1. プロシージャから返された特定の列を一時テーブルに挿入する方法は? 私の場合、proc2 の最初の列です。