今天在插入数据时,发下如下SQL 死活报错
insert into test
select psnid,
sum(f1)
from psn
inner join (select max(year) lastyear, psnid
from wagedata t
group by psnid) tmp
on psn.psnid = tmp.psnid
group by psn.psnid
错误提示是: 不是group by 表达式
但是同样的SQL 在本人本机ORACLE上可以执行
经过对比,发现本机的ORACLE版本是 11.2.0.1.0 而客户的ORACLE版本为11.2.0.4.0
最开始以为是BUG
后来发现 将SQL中的这个tmp的结果集 替换为了一张数据相同的表 ,就能够正常查询了。
至于算不算是BUG 就不好说了,不过这算是11.2.0.1.0 与11.2.0.4.0 的一点差异吧