开发者社区 问答 正文

查找最顶层的ID的SQL语句

表结构:看图
a => a1 => aa3 怎么样可以使用一条SQL语句查找最顶层的ID?
41

展开
收起
落地花开啦 2016-02-08 00:48:23 2208 分享 版权
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    你这种设计就注定了你只能用递归了,省了空间,费了时间。
    以空间换时间,加一个字段,保存一个全路径,比如
    a a
    a1 a/a1
    aa3 a/a1/aa3
    后面的字段,就是全路径,至于这个字段的值怎么构造,随便了。
    也可以直接用id构造
    a 14
    a1 14/18
    aa3 14/18/34
    一目了然。
    你这个结构,一条sql想反查,难。你是可以根据pid和grade去构造一个复杂的嵌套sql语句去反查,但是,也是递归查N次,低效不推荐。

    2019-07-17 18:39:26
    赞同 展开评论
问答分类:
SQL
问答标签:
问答地址: