从自身外键相关的SQL表中选择最顶层的父级。

3

I have following SQL table

Area

id     name         parent_id
1      Pune         null
2      Mumbai       null
3      area1        1
4      area2        3

这里我有一个逻辑外键 parent_id,因此 area2 有父级 area1,而 area1 的父级为 Pune。在这里,我想选择任何子区域的最顶层父级。

例如,当我搜索 area2 时,将返回结果 Pune


你尝试了什么查询语句?出现了哪个错误? - Gunaseelan
1个回答

0

mysql不支持分层连接(例如WITH RECURSIVE

您可以尝试以下解决方案:

MySQL中的分层查询

或在php或任何其他您正在使用的服务器端语言中操作递归

由于您在评论中提到了Oracle / MSSQL:Oracle,MSSQL


我已经添加了MSSQL和Oracle的链接。 - Uri Goren
如果这个答案对您有帮助,请接受它作为答案或至少投票支持,谢谢。 - Uri Goren
我该如何使用postgresql来实现这个? - Tushar Kulkarni

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接