【发布时间】:2011-05-20 20:25:49
【问题描述】:
DECLARE
trn VARCHAR2(2) := 'DD';
cur SYS_REFCURSOR;
BEGIN
OPEN cur FOR
SELECT
TRUNC(some_date, trn),
NULL AS dummy_2,
COUNT( DISTINCT dummy_1 )
FROM
(SELECT SYSDATE AS some_date, ROWNUM AS dummy_1 FROM dual)
GROUP BY
TRUNC(some_date, trn);
END;
这适用于 Oracle 10,但使用 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production 会导致:
ORA-00979:不是 GROUP BY 表达式
ORA-06512: 在第 5 行
谁能重现/解释这个?谢谢!
【问题讨论】:
-
我将其用于统计数据,我想决定记录是按天还是按小时分组。
-
在我的 11gR2(64 位)上运行正常。以防万一,全横幅:Oracle 数据库 11g 企业版版本 11.2.0.1.0 - 64 位生产,具有分区、OLAP、数据挖掘和真正的应用程序测试选项
标签: sql oracle plsql oracle11g ora-00979