2010-03-10 2 views
2

Как объединить строку (объединить) с Oracle 10g SQL?объединение строк в Oracle 10g

+2

Агрегация и конкатенация не совсем то же самое. Что вы имели в виду? – FrustratedWithFormsDesigner

+0

Что я должен был объединить, где функция агрегации является конкатенацией. скажем таблица данных выглядит следующим образом: класс текст TEXT1 TEXT2 B text3 B text4 Я хотел бы иметь группу по запросу выберите класс, функция (текст) из ТАБЛИЦЫ группы по класс , что приводит к чему-то вроде: A TEXT1, TEXT2 B TEXT3, TEXT4 – acroa

ответ

2

Вы можете попробовать оплаченный функцию:

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

Некоторые другие приемы здесь:

http://www.oracle-base.com/articles/misc/StringAggregationTechniques.php

... Если вы на самом деле означает конкатенацию вместо агрегация затем берет все остальные советы и использует оператор || между двумя строками:

select 'abc'||'def' from dual; 
1

Как ни странно, это «||» Оператор:

field1 || field2 
1

Вы можете использовать оператор ||. Пример: 'First' || 'Second'

Также функция CONCAT(var1, var2) позволяет объединить два символа VARCHAR2. Пример: CONCAT('First', 'Second')

0

Существует недокументированная функция wm_concat, что вы можете использовать. Другим вариантом было бы сворачивать ваши собственные. LISTAGG, я думаю, не доступен в 10g.