0

我有一条 SQL 语句需要在 Firebird 中使用超过 1 个聚合函数,但出现以下错误:

Error: GDS Exception. 335544569. Dynamic SQL Error
SQL error code = -104
Nested aggregate and window functions are not allowed
SQLState:  42000
ErrorCode: 335544569

这是我的示例 SQL:

SELECT SUM(LOG(3, (NoPassed/TotalNo * 100))) FROM TABLE_A

感谢您的帮助。

4

1 回答 1

1

您可以使用 LOG 函数的结果填充临时表,然后执行 SUM 聚合函数。

1)

CREATE TABLE TEMP (S DOUBLE PRECISION)

2)

INSERT INTO TEMP (S)
SELECT LOG(3, (NoPassed/TotalNo * 100)) FROM TABLE_A

3)

SELECT SUM(S) FROM TEMP
于 2012-11-14T16:44:32.363 回答