0
我有一个查询返回下面的数据,需要将值列组合为逗号分隔的字符串,不包括重复项和空值。Oracle:将独特的行值组合成以逗号分隔的字符串
g_name g_id v_data
----- ---- ------
Test 123 ABC
Test 123 ABC
Test 123 DEG
Test 123 None
Test 123
Test 123 HIJ
所需的输出:
g_name g_id v_data
----- ---- ------
Test 123 ABC,DEG,HIJ
我一直在使用XMLAGG
尝试,但不能消除重复和空值。
select g_name,
g_id,
RTRIM(XMLAGG(XMLELEMENT(e, v_data || ',')).EXTRACT('//text()'), ',')
from tblData
group by g_name, g_id
LISTAGG仅适用于Oracle 11g,而使用Oracle 10g即时通讯:( – Ianthe 2014-08-29 08:04:22