有关多级分类数据查询的问题
分类表有三个字段:
id,category_name,parent_id
用户表有三个字段:
id,username,category_id
1、如何优雅的查出某个分类下的所有用户?
2、如何优雅的查出某个用户所处的的分类,按照从顶级到最低级的顺序展现?
关于 LearnKu
递归
3级以上递归,3级或3级以下自连 1. Eloquent 模型
深度搜索/广度搜索
看看这个包,laravel-nestedset
自己维护一下tree字段,详情见:博客:高性能无限级分类实现思路
凡是要做类似分级数据的需求,推荐考虑使用楼上提到的
arcanedev/laravel-nestedset这个包。分级层数越多,优化效果越显著。唯一需要注意的是,当分级数据总量较多时,改动数据效率会下降(尤其是历史老数据)。1、如何优雅的查出某个分类下的所有用户?
至于性能,我几年前测试,
10w=160ms。似乎还是在
window上,肯定能满足。1.mysql 8.0 一个sql搞定
2.维护一个path字段 内容为1,2,3,4 可以用非递归做无限级查询
嵌套集合来做分类表 查询下面所有的分类 user表做in查询