gpt4 book ai didi

mysql - 在窗口函数的结果上应用分组依据

转载 作者:行者123 更新时间:2023-11-29 05:51:56 25 4
gpt4 key购买 nike

我用窗口函数计算了每个产品的利润百分比

SELECT 
productCode, productProfit, paymentDate, productName,
productProfit/sum(productProfit) OVER (PARTITION BY productCode) AS percent
FROM
profit;

输出 enter image description here

下一步,我要计算 AVG(percent)。我怎样才能把它放到第一条语句中?

结果是这样的 enter image description here

最佳答案

您计算百分比 的方式有点奇怪。您似乎在确定特定交易对整体利润的贡献。

无论如何,您可以简单地使用现有查询的结果集作为 Derived Table ,并使用 Year() 进行 Group By函数,计算Avg() :

SELECT 
YEAR(dt.paymentDate) AS payment_date_year,
AVG(dt.percent) AS average_profit_percent
FROM
(
SELECT
productCode,
productProfit,
paymentDate,
productName,
productProfit/sum(productProfit) OVER (PARTITION BY productCode) AS percent
FROM
profit
) AS dt
GROUP BY
payment_date_year

关于mysql - 在窗口函数的结果上应用分组依据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53220045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com