樹的深度我目前在SQLite的表,看起來像下面,形成一個樹狀結構:如何遞歸計算的SQLite
+-----+-----------+---------------+
| _id | parent_id | tree_depth |
+=====+===========+===============+
| 1 | 0 | 0 |
| 2 | 1 | (should be 1) |
| 3 | 2 | (should be 2) |
+-----+-----------+---------------+
我有非常有限的SQLite的經驗,這個表相當大,所以我不願意手動填寫它。是否有可用於更新tree_depth列的查詢,以便正確表示該節點處樹的深度?我嘗試選擇父母的樹深度和增量,但由於某種原因,它將所有設置爲1.
任何意見,將不勝感激。
編輯:查詢我試圖是:
UPDATE table SET tree_depth = (SELECT p.tree_depth FROM table JOIN table p ON p._id=table.parent_id) +1
這似乎並不工作,因爲SQLite不容許FROM UPDATE中。此外,a.tree_depth應該是b.tree_depth + 1.但是,我無法正確加入它。 –