现在有一种需求,比如现在有 a b 两个用户,当用户c注册的时候,是通过a介绍注册的,那c就是a的连锁会员,那用户d通过c注册,他既是c的连锁会员,也是a的连锁会员,以此类推,表该如何设计,我现在是用的中间表(用户Id,推荐人ID),但是好像有问题

解决方案 »

  1.   

    可以这样,最简单的
    用户表
    userid username ....
    用户注册关系表, 
    userid p_useridsp_userids是个序列, 
      

  2.   

    但是添加删除关系的时候很麻烦,你意思是 userid  p_usersids
    1       2,3如果通过用户3添加一个用户4,数据库应该是这样userid  p_usersids
    1       2,3,4
    3       4如果以后层级多了代码实现有点麻烦哦?
      

  3.   

    直接使用树的存储即可。uid, p_uid
    比如现在有 a b 两个用户,当用户c注册的时候,是通过a介绍注册的,那c就是a的连锁会员,那用户d通过c注册,他既是c的连锁会员,也是a的连锁会员,
    uid, p_uid
    a  
    b
    c  a
    d  c不过搜索的时候需要用到程序。
      

  4.   

    这样储存搜索的时候不知道怎么实现,比如SQL,如果查询某个用户所有的关联的用户,这样涉及到很多层级,不知道如何实现
      

  5.   

    MySQL中进行树状所有子节点的查询
    http://blog.csdn.net/acmain_chm/article/details/4142971