1
解決策を探していますが、回答が見つかりません。パラメータとして集約関数を使用するmySQLでプロシージャまたは関数を作成することは可能ですか? たとえば、関数myFunction(SUM)を呼び出すと、集計関数としてSUMが使用されます。myFuction(MAX)を呼び出すとMAXが使用されます。mySQLのパラメータとして集計関数
解決策を探していますが、回答が見つかりません。パラメータとして集約関数を使用するmySQLでプロシージャまたは関数を作成することは可能ですか? たとえば、関数myFunction(SUM)を呼び出すと、集計関数としてSUMが使用されます。myFuction(MAX)を呼び出すとMAXが使用されます。mySQLのパラメータとして集計関数
動的SQLを使用することができます。つまり、prepare
とexec
文です。このインラインを行いたい場合は
、あなたのような何かをしたいかもしれません:
select (case when myfunction = 'SUM' then sum(x)
when myfunction = 'MAX' then max(x)
. . .
end) as custom_agg
私はまた、あなたがパラメータとして関数名を渡すことができないことに注意してください。
大変ありがとうございます。今はすべてがわかります – ju5tlazy