4
以下是我在我的MySQL數據庫表:使用特定根從SQL表中獲取最新分支的最有效方法是什麼?
id | parent | name
----------------------
1 | null | Root 1
3 | null | Root 3
6 | 3 | something 1
7 | 6 | something 2
9 | 1 | something 3
我想獲得最新的分支出來的表。現在我只是檢查最高id
並按照代碼中的項目。
在我的情況下,我可以假設最新的條目始終是分支的尖端,而不是分支或根的中間。
我遇到的問題是獲取最新的特定根。假設我想要根3
的最新分支。我會怎麼做?
有沒有一種方法,我可以在SQL中查詢這個,而不必在PHP中進行遞歸循環,直到我找到我需要的東西?
改變樹存儲在SQL中的方式目前不是一個選項。 :(
http://stackoverflow.com/questions/12796113/mysql-how-to-找到特定節點中的節點 這可能會解決你的問題 – Naruto
不是真的,沒有。如您所建議的那樣,更改您的數據模型或編寫一個存儲過程,或將表加入自己,或者使用應用程序級代碼來處理遞歸。 – Strawberry