SELECT deptno, LISTAGG(ename, ',') WITHIN GROUP (ORDER BY ename) AS employees
FROM emp
GROUP BY deptno;
Error:-
ORA-00923: FROM keyword not found where expected
00923. 00000 - "FROM keyword not found where expected"
*Cause:
*Action:
Error at Line: 1 Column: 42
Oracle Database 11g 企业版版本 11.1.0.7.0 - 64 位生产版
In 本文 https://oracle-base.com/articles/misc/string-aggregation-techniques您可以使用不同的方法来处理字符串聚合,包括如果您运行的是 11g 第 2 版之前的 Oracle 版本(这是您的场景),则需要考虑这些方法。
特别是,您可以使用 Oracle 的WM_CONCAT
功能:
SELECT deptno, wm_concat(ename) AS employees
FROM emp
GROUP BY deptno;
您还可以定义自己的字符串聚合函数或使用其他函数,例如SYS_CONNECT_BY_PATH
or COLLECT
。在上面的文章中,您有这些方法的示例。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)