使用pivot和in子句将行转换为列

时间:2014-11-14 22:32:02

标签: sql oracle oracle11g pivot

我有两个表t1和t2

T1:

object_id date
123       11/10/2014

T2:

object_id   employee_id
123            abc
123            xyz
123            def
456            ghi

我想将结果显示为

123 11/10/2014 abc xyz def
456 11/10/2014 ghi

即,每个员工姓名的新列

如何使用pivot和in子句进行此操作?

1 个答案:

答案 0 :(得分:0)

它不需要枢轴。您只需加入表并使用listagg函数。

this link中有一个示例。

http://www.oracle-developer.net/display.php?id=515

在您的示例中,它将像

LISTAGG(employee_id, ',') WITHIN GROUP (ORDER BY object_id) AS employees