2012-11-14 178 views
0

我在火鸟使用超过1个聚合函数需要一个SQL语句,但我得到以下错误:火鸟1.5:嵌套聚合

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 

谢谢你的帮助。

+0

那种聚集是不可能在大多数的DBMS。告诉我们你想达到什么效果。 – nawfal

+1

为什么不升级到FB 2.5? –

+0

@AndrejKirejeŭ,FB2.5是不可能的,因为它需要经过很长的过程才能做到这一点,目前公司没有计划进行升级。 – Ianthe

回答

1

可以在临时表中填写具有日志功能的结果,然后执行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 
+0

感谢您的回答。 – Ianthe