gpt4 book ai didi

sql - 为什么SQL中没有Product聚合函数?

转载 作者:行者123 更新时间:2023-12-03 06:01:27 25 4
gpt4 key购买 nike

我正在寻找类似于 SUM 工作方式的 SELECT PRODUCT(table.price) FROM table GROUP BY table.sale 之类的内容。

我是否错过了文档中的某些内容,或者真的没有 PRODUCT 功能?

如果是这样,为什么不呢?

注意:我在postgres、mysql和mssql中查找了该函数,但没有找到,所以我假设所有sql都不支持它。

最佳答案

对于 MSSQL,您可以使用它。它可以用于其他平台:它只是数学和对数的聚合。

SELECT
GrpID,
CASE
WHEN MinVal = 0 THEN 0
WHEN Neg % 2 = 1 THEN -1 * EXP(ABSMult)
ELSE EXP(ABSMult)
END
FROM
(
SELECT
GrpID,
--log of +ve row values
SUM(LOG(ABS(NULLIF(Value, 0)))) AS ABSMult,
--count of -ve values. Even = +ve result.
SUM(SIGN(CASE WHEN Value < 0 THEN 1 ELSE 0 END)) AS Neg,
--anything * zero = zero
MIN(ABS(Value)) AS MinVal
FROM
Mytable
GROUP BY
GrpID
) foo

摘 self 的回答:SQL Server Query - groupwise multiplication

关于sql - 为什么SQL中没有Product聚合函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3912204/

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