我在 Oracle Data Integrator 中有如下界面
http://i44.tinypic.com/2mrsmxt.png
它在插入以下 SQL 表达式之前成功执行
在映射中,我插入以下 SQL 表达式以获取数量为 0 时的平均值
AVG(
CASE WHEN TEST.QUN = 0 THEN
(SELECT TEST.QUN
FROM TEST
WHERE TEST1.PRUDU=TEST.PRUDU
AND TEST1.FLOW=TEST.UNIT
AND TEST1.UNIT=TEST.UNIT
AND to_char(TEST.DATEDDD,'MON')= to_char(TEST1.DATEDDD,'MON')
AND TEST1.DATEDDD !=TEST.DATEDDD
GROUP BY TEST.QUN )
ELSE TEST.QUN
END)
当我在 ODI 中检查这个表达式时,SQL 表达式对于这个 RDBMS 是正确的,但是当我执行接口时,我得到了这个错误
Caused By: java.sql.SQLSyntaxErrorException:
ORA-00937: not a single-group group function
任何想法?