我有以下SQL表
区域id name parent_id
1 Pune null
2 Mumbai null
3 area1 1
4 area2 3
这里我有逻辑外键parent_id
,这样area2
有父area1
, area1
有父Pune
。这里我想选择任何子区域的最顶层父。例如,当我搜索area2
时,它将给出结果Pune
。
mysql不支持分层连接(例如WITH RECURSIVE
)
你可以试试这个解决方案:
MySQL的分级查询
或在php
或您正在使用的任何其他服务器端语言中操作递归
既然你在评论中问到Oracle/MSSQL: Oracle,MSSQL