我創建了兩個表,並將其上傳到信任imgur.com向您展示一個例子:分層存儲數據
//編輯貌似imgur下跌,上傳到另一個站點: http://images.tinypic.pl/i/00761/0ies71okcyxd.png
因爲它是在上面的例子中,你看,那
- PANTIES
- 束腰
- SOCKS
- PAJAMA
屬於父5,屬於第5類,這意味着於內衣和類屬於父1,這意味着它屬於稱爲第1類衣服。
我讀下面這樣的網站的例子:
www.phpro.org/tutorials/Managing-Hierarchical-Data-with-PHP-and-MySQL.html
mysql hierarchy storage with large trees
http://www.slideshare.net/billkarwin/models-for-hierarchical-data
https://www.percona.com/blog/2011/02/14/moving-subtrees-in-closure-table/
https://pragprog.com/book/bksqla/sql-antipatterns
What is the most efficient/elegant way to parse a flat table into a tree?
,我仍然無法弄清楚如何顯示的路徑:
- 所有的衣服,
- ALL內衣(內褲,束腰,襪子,睡衣)。
我只能顯示例如:
PAJAMA
SELECT t.path FROM thumbnails t LEFT JOIN categories c ON t.category = c.category WHERE t.category = 9
,其中9 = PAJAMA
我知道這篇文章,我喜歡它,但這不是一個完整的答案。我仍然不知道如何顯示所有內衣的路徑*。 –
問題是,你不能在這樣的數據結構上進行無限深度的路徑查詢。您需要更改數據結構以適應任何深度的路徑。然後,您需要執行自連接:SELECT * FROM table_a作爲父連接table_a作爲子對象。 –