选择澳大利亚1起计划的查询

时间:2011-03-25 07:42:38

标签: sql

有人可以给我澳大利亚1起计划的选择查询吗?

澳大利亚1起计划的解释:

公司表示该公司是节点“零”

说“one”是加入公司的根关联公司。(在“零”下) “两个”“三个”“四个”加入“一个”(i,e,推荐ID为“one”)

再次以simailar的方式 “五”“六”“七”加入“二” “八”“九”“十”加入“三”和“三” “十一”“十二”“十三”加入“四”之下

希望这个图表在你的脑海中清晰到现在(或者把它画在纸上)

现在计划是每一个加入“一个”的成员成为他的下线。(这里“三个”和“四个”是“一个”的下线(“两个”不是“一个”下线cz“一个”是为他的继任者根“零”传递“两个”)

不仅“三”和“四”是“一”的下线,而且每个第一个加入“三”或“四”的成员(i,e,在“一”的下线)也是下线“一” (i,e“八和十一”也是“一”的下线)

(“五”“六”七“不是”一“的下线cz他们不是”一“的下线的下线我的意思是他们加入了”两个“不是”一个“的下线那是为什么他们不在树上)

                     one
                      |
    ----------------------------------------------------
    |                          |                       |
    two                       three                   four
     |                         |                       |
  ----------------------      ---------------------    ---------------------
  |      |             |      |       |           |    |        |          |
 five   six        seven      eight   nine      ten    eleven   twelve   thirteen

所以如果我的表有两列“user_id”(主键) 并且“referal id”as(其中提示创建此新用户ID的id)

然后选择查询以查找“one”的所有下线

我将非常乐意得到答案。

1 个答案:

答案 0 :(得分:0)

如果是oracle你可以使用connect by子句: 土耳其人:oracle connect by 对于英语:oracle connect by

SELECT tckimlik,adi, SYS_CONNECT_BY_PATH(adi, '->') AS konum
FROM ailem
CONNECT BY PRIOR tckimlik=baba_tc
START WITH baba_tc IS NULL

结果:

enter image description here

SELECT  LPAD('-',LEVEL,'-')|| adi sahis,tckimlik,baba_tc,LEVEL
FROM  ailem
START WITH baba_tc IS NULL
CONNECT BY PRIOR tckimlik=baba_tc

结果:

enter image description here

mysql中的分层数据: http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/