一个id的上一级是trunc(id/2),上上一级是trunc(trunc(id/2)/2)...

解决方案 »

  1.   

    如果没有更好的方法,,,
    暂时考虑的是只输入用户名,然后显示出该用户的所有下级用户,数据库设计如下:
    用户名:user  编号:id(编号自动增加、且不能删除、不能更改)假如每个用户下面最多有62个下属用户,哪么也列成表的话,每个用户下面应该可以列五行
    通过分析得出,每个用户的下面五行可以用下述公式求出:第一行的下属用户应该为:id*2<= all <=id*2+(2-1)
    第二行的下属用户应该为:id*2*2<= all <=id*2*2+(2*2-1)
    第三行的下属用户应该为:id*2*2*2<= all <=id*2*2*2+(2*2*2-1)
    第四行的下属用户应该为:id*2*2*2*2<= all <=id*2*2*2*2+(2*2*2*2-1)
    第五行的下属用户应该为:id*2*2*2*2*2<= all <=id*2*2*2*2*2+(2*2*2*2*2-1)
    (不好意思,因为记事本没法打下标,所以2的N次方都用N个2相乘表示出来)把id=1套入公式中可得出该用户的下属用户的:
    第一行:2-3之间
    第二行:4-7之间
    第三行:8-15之间
    第四行:16-31之间
    第五行:32-61之间如果把id=3、4、5、6、7、8.。套入该公式中,可求出该用户下属用户的id为:你自己套入算吧:),肯定会符合你的要求因此列出某用户的所有下属用户的SQL语句就为:俺就不写了:),,,,
      

  2.   

    如果按时间先后顺序排列会员,我现在知道一个id就可以搞定,但如果有推荐人,即新用户必须是推荐人下属会员,一个id恐怕不行?怎么设计呢?
      

  3.   

    我自己参照大家思路后设计如下字段,请大家批阅一下,有何不足,用来解决有推荐人的条件id(自动增长+1),用户编号,密码,推荐人编号,团队人数,to :它们都叫俺猩猩) 
    我可能没说清楚 ,我是想问在数据库中怎么实现连接信息即推荐人和被推荐人的联系
      

  4.   

    很同意  aryou  的思想
    但  在如何实现上  真的搞不透
    可否参看 aryou的SQL语句 一下!!!这个问题也许不用这么麻烦
    可以用参数传递实现+1=62  取消资格或晋级