我现在第一次坐在MySQL数据库中,需要创建一个"树遍历"查询。
我有两个表:
团队:
--------------------------------
|INT id|VARCHAR name|INT parent|
--------------------------------
1 Test 1 null
2 Test 2 1
3 Test 3 2
4 Test 4 1
5 Test 5 null
船员:--------------------------------
|INT id|VARCHAR name|INT teamId|
--------------------------------
在这个数据库中,每个团队可以有一个子团队,并且每个团队可以有多个相关的团队。
我要创建的是一个查询,在这里我可以输入一个团队。id,它将返回所有团队成员的Crew,其中team。Id是他们团队的祖先(不只是父祖先,一般祖先)。还有摄制组的成员。id本身。
例如,如果我设置Team。id(在查询中)为2,它将返回"Test 2"one_answers"Test 3"的船员。如果我输入1,它将返回"测试1","测试2","测试3"one_answers"测试4"的乘员。
我在这里搜索了StackOverflow,并得出了一些答案,但它们是我对MySQL的经验的概括。
提前感谢。
据我所知,递归选择是不是在MySql中实现的。这可以通过编写一个递归MySql函数来实现。