⼀条sql实现⽆限极分类
我还没提到就有⼈迫不及待的想回答,递归呗,但是你们想过没有,递归的话,如果有3000个分类,有⼀级,⼆级,三级,四级的列表。你这个程序压根就跑不动,你或许会说缓存呗,但是⽣成缓存的速度是你⽆法忍受的。
递归做法表结构创建:
id int(10)分类id
name varchar(64)8804分类名称
reid int(10)⽗类id
需求⼀:
需求2:
需求1⽐较简单,没啥数据量,⽤ajax展⽰打开就⾏,但是需求2要全部列出来这就难倒我们了,如果按照某些⼈的做法不断的递归查询sql,⼀旦分类达到3000个的时候,根本打不开的⽹站
织梦cms的思路是这样的:
id分类id
topid顶级id
reid⽗类id
没错这种思路⽐第⼀种要简化很多,只是多了个字段,但是执⾏效率就绝对不⼀样了。
根据顶级分类到它相应的⼆级分类,再根据⼆级分类递归调出三级分类。
织梦cms收费7800我的思路:
⽗类id
id分类id
reid⽗类id
height层级
height层级
⾸先全表sql得到列表.
通过程序 把⼀级分类放在⼀个数组中,然后把⼆级分类放到⼀个数组⾥。这样通过⼀级分类⼆级分类很容易了,不⽤再执⾏sql了,只需要在⼆级分类中⽗类id等于某分类即可获得该分类下的所有⼦分类,依次类推。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论