0

可能重复:
是否存在将多行聚合为一行的 Oracle SQL 查询?

我有一张桌子(员工)。

员工

ID   Name   Salary  

1    Steve  10000

2    Buck   15000

3    Dan    10000 

4    Dave   10000

我需要返回所有工资为 10000 美元的员工姓名,员工姓名由加号分隔 - 包括开头和结尾的一个。我可以使用游标执行此操作,并通过游标添加所有员工姓名。但是有没有办法使用单个查询来返回它?在上面的这个例子中,我需要结果为 +Steve+Dan+Dave+

4

1 回答 1

0

看看字符串聚合函数。

例如,在 Oracle 11g 第 2 版中,您可以执行以下操作:

SELECT CONCAT(CONCAT('+', LISTAGG(Employee.Name, '+')), '+') FROM Employee WHERE Salary >= 10000
于 2012-12-17T21:12:48.423 回答