关于多层数据排序的数据设计

来源:互联网 发布:防盗门锁芯规格 知乎 编辑:程序博客网 时间:2024/05/21 17:26

在项目中遇到一个问题:

有一组数据是有多层结构的,比如说a,b,c,d,e,f代表六条数据,其中a代表第一层,b,c是a的子集,d,e,f又是c的子集。。。,由多层结构,他们之间的父子关系有他们的id以及parentid决定,最上层的parentid为空且唯一,现在要求用easyui的datagrid分页展示数据,同时展示的数据顺序满足这种层次结构,那么如何设计数据库中关于排序的字段呢?(需要说明的是项目需求是会有插入数据的功能的,插入后的排序也要满足层级结构)。

一开始想不用增加排序字段,通过id与parentid的关系通过迭代的方式查询,但当时的数据时一次性查出来因为还要分页,迭代的话也很浪费时间。后来由前辈设计了排序字段:

如果是第一层,那么字段值为001,其子集就为001001,001002,。。。,子集的子集就是001001001,001001002,001001003.。。以此类推,这样就可以通过sql语句将原有的层级顺序体现出来,且简单方便。

0 0
原创粉丝点击