Heim > Backend-Entwicklung > PHP-Tutorial > 无限极推广,如何快速得到某个用户的下级用户总数?

无限极推广,如何快速得到某个用户的下级用户总数?

WBOY
Freigeben: 2016-06-06 20:18:27
Original
2070 Leute haben es durchsucht

目前在用户表里面用pid关联上下级关系,统计某个用户的下级总数时用的递归查询到19级,但是后来发现在用户下级数量较大时直接就将网站拖死了,请问大家该怎么处理?谢谢。。

回复内容:

目前在用户表里面用pid关联上下级关系,统计某个用户的下级总数时用的递归查询到19级,但是后来发现在用户下级数量较大时直接就将网站拖死了,请问大家该怎么处理?谢谢。。

增加一个path字段

这个其实在很多电商站里面也会遇到这种类似无限级分类的问题,设计我们有时候会所以然的加上一个pid要标识子类,到最后进行查询都得把自己给搞死了。

这时候我们就是修改数据库表结构就可以了,允许数据冗余这个问题就解决了。

补充:

可以在当前表里面增加一个列叫pid_list,这里面存储的格式为1,2,3 1为最高层级 2为上线,3为自己本身的id.

还可以是增加一个标识自己所属的层级Depth,1级为1,对应pid_list的位数层级数。

加了这些之后我们再去查询就方便很多啦。

参考无级数分类

可以增加一个path字段

直接在每个用户记录上增加一个孩子总数, A->B->C->D 如果C邀请了D, 则更新ABC三个加1。 这个任务如果非实时,可以异步处理。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage