我希望能够创建自己的GROUP BY功能。就像有一个AVG()或SUM()函数可以在GROUP BY中使用,其中average和sum是根据每个特定组中的值计算的,我希望能够创建自己的函数,它将根据值计算某些值。组。假设我想创建MYFN()函数,它将计算Σx^ 2 / n(x是组中的值和组中的n个值)。此函数的用法应如下所示:
SELECT mygroup,MYFN(x)
FROM mytable
GROUP BY mygroup
ORDER BY 2 DESC
怎么做?
答案 0 :(得分:1)
SELECT mygroup, sum(ColFun) As ColFun FROM
(
SELECT mygroup,MYFN(x) As ColFun FROM mytable
)Y
GROUP BY mygroup