0

データベースから集計統計を取得するストアド プロシージャを作成しようとしています。

列を動的に選択できるように手順を修正したいと思います。

私の最初の考えは、Case または IF ステートメントを使用して異なる列を選択することでした

DELIMITER//
CREATE PROCEDURE 'procStats'(IN buySell varchar(4))
SELECT 

    CASE 
        WHEN buySell = 'Buy' THEN AVG(salesTransactions.BuyPrice) AS AveragePrice,
        WHEN buySell = 'Sell' THEN AVG(salesTransactions.SellPrice) AS AveragePrice,
    END CASE;

    MONTHNAME(salesTransactions.DateOfTransaction) as TransactionMonth
FROM
    salesTransactions
GROUP BY 
    TransactionMonth
LIMIT 6;
END//

ケースステートメントはこの目的を意図したものではないと思いますが、現在は機能していません...上記を達成することは可能ですか??

参考までに-両方の列を選択できることは十分に承知していますが、両方の列をWebアプリに公開したくありません。

4

1 に答える 1