Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 使用b列作为结果,我猜是自联接?_Mysql_Sql_Self Join - Fatal编程技术网

Mysql 使用b列作为结果,我猜是自联接?

Mysql 使用b列作为结果,我猜是自联接?,mysql,sql,self-join,Mysql,Sql,Self Join,这看起来应该很容易。考虑一下这张桌子…p> | parent | child | | aaaa | bbbb | | aaaa | cccc | | aaaa | dddd | | bbbb | gggg | | bbbb | hhhh | | bbbb | eeee | | nnnn | kkkk | | nnnn | kkkk | | cccc | rrrr | | cccc | tttt

这看起来应该很容易。考虑一下这张桌子…p>
| parent  | child  |
| aaaa    | bbbb   |
| aaaa    | cccc   |
| aaaa    | dddd   |
| bbbb    | gggg   |
| bbbb    | hhhh   |
| bbbb    | eeee   |
| nnnn    | kkkk   |
| nnnn    | kkkk   |
| cccc    | rrrr   |
| cccc    | tttt   |
| cccc    | wwww   |
| cccc    | xxxx   |
| hhhh    | zzzz   |
| hhhh    | pppp   |
| eeee    | FFFF   |
我怎样才能得到子对象,然后使用子对象结果得到它们的所有子对象,然后使用该结果得到这些子对象,依此类推。。直到不再有比赛

如果我选择其中parent=aaaa,我的结果应该是

bbbb
 gggg
 hhhh
  zzzz
  pppp
 eeee
  FFFF
cccc
 rrrr
 tttt
 wwww
 xxxx
dddd

你不能。MySQL不支持递归。选择包括尽可能频繁地将表连接到自身,构造存储过程,处理应用程序代码中的逻辑,或切换到替代模型(例如嵌套集)。在Oracle中,这是通过CONNECT_BY完成的,您也可以搜索该主题。这有时称为分层查询。关于这一点还有其他一些问题,答案只能称为冷酷的黑客。但它们是有效的。您可以查找它们。选择children.child作为表t中的叶左连接表children.child=t.child其中t.parent在选择children.child作为表t中的叶左连接表children.child=t.child其中t.parent=aaaa;这是什么意思?如果这是一个答案,请把它作为一个解释,并接受它。