Нужны предложения в создании SQL-запроса

У нас есть ниже тип записей в таблице:

table_example:

id|desc|is_parent_record|parent_id
1|parent record|yes|
2|child record|no|1
3|standalone record|no

мы хотим получить все записи в следующем формате

id|parent id|desc
1| |parent record
2|1|child record
3| |no parent, standalone record

Любые предложения и помощь для создания запроса SQL?

Спасибо Раджеш

1 ответ

Используйте просто иерархический запрос с case when а также connect_by_isleaf:

select id, parent_id, 
       case when level = 1 and connect_by_isleaf = 1 
            then 'no parent, '||descr 
            else descr
       end descr
  from t
  connect by prior id = parent_id
  start with parent_id is null

демонстрация

    ID  PARENT_ID DESCR
------ ---------- ----------------------------
     1            parent record
     2          1 child record
     3            no parent, standalone record
Другие вопросы по тегам