Я делал как следующий запрос и получил ошибку «не групповая групповая функция».Oracle SQL: rtrim и group by
select distinct a.col1,
a.col2,
rtrim(xmlagg(xmlelement(e, b.col1 ||',')).extract('//text()'), ','),
rtrim(xmlagg(xmlelement(e, b.col2 ||',')).extract('//text()'), ',')
from table1 a
where a.col3 like '%string%'
left join table2 b on (a.pid = b.pid);
Я оставил соединение между таблицей 1 и таблицей2, и мне нужно собрать несколько строк в одну строку. Так что я написал:
rtrim(xmlagg(xmlelement(e, b.col1 ||',')).extract('//text()'), ','),
rtrim(xmlagg(xmlelement(e, b.col2 ||',')).extract('//text()'), ',')
Но когда я пытаюсь сделать это, я получил сообщение об ошибке:
ORA-00937 not a single-group group function
Я не использую никакого агрегирования в операторе отбора. Что мне делать, чтобы написать rtrim (...) без ошибки?
Заранее спасибо.