连接Oracle中行的值

时间:2010-12-16 22:42:24

标签: oracle concatenation

我在Oracle中有一个查询,它在Field1上执行一个组。此查询返回2行,但是,row1在field1上的计数为2。我想在row1的单个单元格中显示两个Field1值。这可能吗?

3 个答案:

答案 0 :(得分:3)

Tim Hall拥有Oracle中可用的不同string aggregation techniques的集合。根据Oracle版本的不同,我通常更喜欢内置的LISTAGG分析函数(适用于11.2)或早期版本的用户定义聚合函数。

答案 1 :(得分:0)

两个计数很简单,只需一个MIN(field1)||','|| MAX(field1)

您可能希望以不同的方式来处理两行具有相同的值:

CASE WHEN MIN(field1)!= MAX(field1)THEN MIN(field1)||','|| MAX(field1)ELSE MIN(field1)END

答案 2 :(得分:0)

编写小型存储过程有时是最简单的,因为您可以独立于数字控制格式。其他答案可能更好,但如果您熟悉PL / SQL,这会更快。