我有一张如下表格
EMPID EMPNAME MANAGERID
1 E1 M1
2 E2 M2
1 E3 M1
需要以下预期数据。
EMPID EMPNAME MANAGERID
1 E1,E3 M1
2 E2 M2
即消除基于EMPID和MANAGERID的重复项并更新EMPNAME,如图所示。
答案 0 :(得分:2)
解决方案是使用WM_CONCAT
SELECT
EMPID,
WM_CONCAT(EMPNAME) ENMPNAME,
MANAGERID
FROM
<table name>
GROUP BY
EMPID,
MANAGERID;
另一种解决方案(11gR2 +):
SELECT
EMPID,
LISTAGG(EMPNAME, ',') WITHIN GROUP (ORDER BY EMPID, MANAGERID) EMPNAME,
MANAGERID
FROM
<table name>
GROUP BY
EMPID,
MANAGERID;