我们在表格中有以下类型的记录:
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查询的任何建议和帮助吗?
谢谢, 拉杰什
答案 0 :(得分:0)
使用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
<强> demo 强>
ID PARENT_ID DESCR
------ ---------- ----------------------------
1 parent record
2 1 child record
3 no parent, standalone record