大家好,又见面了,我是你们的朋友全栈君。
例子:
SELECT COUNT(*) BZC144, NVL(SUM(BCF125), 0) BZC145, CF11.AAA020 FROM CF11, CF12 WHERE CF11.BCF110 = CF12.BCF110 AND CF11.AAE100 = ‘1’;
在Oracle中PLSQL执行上面的语句就会出现,ORA-00937:不是单组分组函数.
原因是:
数据中有这么一条规则:出现在select列表中的字段或者出现在order by后面的字段,如果不是包含在分组函数中,那么该字段必须同时在group by子句中出现。
SQL改成
SELECT COUNT(*) BZC144, NVL(SUM(BCF125), 0) BZC145, CF11.AAA020 FROM CF11, CF12 WHERE CF11.BCF110 = CF12.BCF110 AND CF11.AAE100 = ‘1’ GROUP BY CF11.AAA020;
就好了。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/148731.html原文链接:https://javaforall.cn