a推广出的a-1,a-2继续推广,得到a-1-1,a-1-2等等
数据库设计思路如下:
用户表中有一个son这么一个字段,这个字段中存放名下所有会员的id,用分号隔开。
这个字段的维护:
比如a-1-1推广出了一个a-1-1-1,此新用户的id是12345,那么给a-1-1 a-1 a这个三个用户son字段内均添加12345这个id,删除一个用户做法一样。
有了这张表就能实现你要的效果。
查一个会员名下所有的会员,只需要读取该会员的son字段即可
查一个会员的上级 怎在数据库中所搜son字段,含有此会员id的都是他的上级会员。
当然,还有一个字段是标记此会员的直接上级会员,这样 一张表就能从任意会员得到整个会员推广树。
字段 id pid name son ...后面省略
id
pid
name
son
1
0
a
2,3,4,5,6,7,8,9
2
1
a-1
4,5,6,7,8,9
3
1
a-2
0
4
2
a-1-1
6,7,8,9,
5
2
a-1-2
0
6
4
a-1-1-1
8,9
7
4
a-1-1-2
0
8
6
a-1-1-1-1
9
9
8
a-1-1-1-1-1
0
这个是测试数据
要获取id为7的所有上级,只需在son中找7即可,1 2 4 均是7的上级 4是7的直接上级
要获取id为4的所有下级,直接读取son即可,6 7 8 9 为4的下级
son里面的id号 怎么添加上去?
以9为例,添加9这个用户时肯定是知道他的直接上级是8,因为就是通过8推广得到9的,然后根据8取到8的所有上级,将9添加到8的所有上级的son字段中,包括8也要添加。