栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

SQL挑战/难题:如何使用SQL查询创建ASCII艺术层次树?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SQL挑战/难题:如何使用SQL查询创建ASCII艺术层次树?

SQLite

Vertical siblings

with        last_sibling (id) as (     select      max (id)     from        h     group by    pid ),tree (id,branch,path) as (     select      1       as id     ,''      as branch     ,'001'   as path     union all     select      h.id     ,t.branch || case when ls.id is not null then ' ' else '|' end || '    '     ,t.path || '_' || substr ('00000' || h.id,-5)     from         tree t      left join   last_sibling    ls      on          ls.id   =       t.id      join        h      on          h.pid =       t.id ),vertical_space (n) as (     select      1     union all     select      vs.n + 1     from        vertical_space  vs     where       vs.n < 2 )select      t.branch || case vs.n when 1 then '|____' || ' ' || cast (t.id as text) else '|' endfrom         tree t cross join  vertical_space  vsorder by    t.path,vs.n desc;


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/456138.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号