数据库
首页 > 数据库> > mysql – 在数据库中实现分层数据结构

mysql – 在数据库中实现分层数据结构

作者:互联网

我知道有两种方法:邻接列表和嵌套树.据说由于大量查询,邻接列表在遍历上使用会很慢.但我不知道这方面的任何实际数字.我正在制作的网站将有200页.遍历生成(例如)站点地图需要花费超过0.3秒的时间吗?

使用LAMP堆栈在MySQL(innoDB)上运行.

如果可能的话,我更愿意实现邻接,因为设计更简单.

谢谢.

解决方法:

除了你提到的两个选项之外,还有更多的选择.有:

>邻接列表(几乎每个人都使用的“parent_id”)
>嵌套集
>路径枚举
>关闭表(又称邻接关系)

看我对“What is the most efficient/elegant way to parse a flat table into a tree?”的回答

或者几本书:

> Joe Celko的“Trees and Hierarchies in SQL for Smarties”.
> Vadim Tropashko的“SQL Design Patterns”.

标签:mysql,database,hierarchical-data
来源: https://codeday.me/bug/20190918/1811861.html