【发布时间】:2020-03-06 10:49:38
【问题描述】:
我有这个代码:
select eto.id,( epe.surname || ' ' || epe.name || ' ' || epe.patronymic) fio
from employee_trip_orders eto
left join employee_card_order_links ecol
on eto.id = ecol.trip_order_id
left join employee_trip_cards etc
on ecol.trip_card_id = etc.employee_trip_card_id
left join eip_persons.employees epe
on etc.employee_id = epe.employee_id
where eto.id=2223
order by eto.id
以及执行此代码的结果
id fio
------------
2223 John Smith Brown
2223 Jack Orange Apple
2223 Jordan Stinky Tomato
我想将其转换为带有逗号分隔符的单行
id fio
-------------------------------
2223 | John Smith Brown,
| Jack Orange Apple,
| Jordan Stinky Tomato
-------------------------------
如何在不使用外部函数、分组和聚合函数的情况下实现这一目标?谢谢
【问题讨论】:
-
不,不,@a_horse。 “......不使用外部函数,分组和聚合函数”。如果我是你(OP),我会把它写在一张纸上,在适当的地方加上逗号。该方法不使用外部函数等。
-
@Littlefoot:没有聚合函数的聚合似乎是一种相当徒劳的尝试
-
使用
listagg()有什么问题? -
@Littlefoot mb 我还需要一个选择吗?
-
@a_horse (“...似乎是一个相当徒劳的尝试”)。当然可以。进入“如何让简单的事情变得复杂”。
标签: sql oracle join string-aggregation