я ниже таблицезначения столбцов в строке
id count hour age range
-------------------------------------
0 5 10 61 10-200
1 6 20 61 10-200
2 7 15 61 10-200
5 9 5 61 201-300
7 10 25 61 201-300
0 5 10 62 10-20
1 6 20 62 10-20
2 7 15 62 10-20
5 9 5 62 21-30
1 8 6 62 21-30
7 10 25 62 21-30
10 15 30 62 31-40
мне нужно, чтобы выбрать различные значения диапазона столбца Я попытался следующий запрос
Select distinct range as interval from table name where age = 62;
его результат в колонке следующим образом:
interval
----------
10-20
21-30
31-41
Как я могу получить результат следующим образом?
10-20, 21-30, 31-40
EDITED: Я сейчас пытаюсь следующий запрос:
select sys_connect_by_path(range,',') interval
from
(select distinct NVL(range,'0') range , ROW_NUMBER() OVER (ORDER BY RANGE) rn
from table_name where age = 62)
where connect_by_isleaf = 1 CONNECT BY rn = PRIOR rn+1 start with rn = 1;
Что дает мне выход, как:
ребята плз помочь мне получить мой желаемый результат.
no im using 11.1 его не поддерживает функции listagg и concatenate. – Pramod
@Pramod - Обновлен мой ответ с функциональностью до 11.2 –
Спасибо, Justin, это действительно сработало .. Большое вам спасибо – Pramod