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