Ticket_FiscalTotalsプロシージャは、いくつかのフィールドを含むデータセットを返しますが、必要なのはそのうちの1つ(Service
)だけです。 。プロシージャをストアド関数に書き直します-Get_Ticket_FiscalTotals_Service
。
もう1つの方法は、プロシージャで一時テーブルを作成して入力し、この一時テーブルをクエリに追加することです。例:
DELIMITER $$
CREATE PROCEDURE Ticket_FiscalTotals()
BEGIN
DROP TEMPORARY TABLE IF EXISTS temp1;
CREATE TEMPORARY TABLE temp1(
Service FLOAT(10.2),
Items FLOAT(10.2),
SalesTax FLOAT(10.2),
eTaxAmount FLOAT(10.2),
GrandTotal FLOAT(10.2)
);
INSERT INTO temp1 VALUES (75.0, 325.0, 25.19, 8.0, 433.19);
END
$$
DELIMITER ;
-- Usage
CALL Ticket_FiscalTotals();
SELECT t.*, tmp.service FROM Ticket t, temp1 tmp;