我有這樣一個表:從PHPMYSQL:創建一個查詢顯示輸入的父/ hirearchy(Breadcumbs)
--------------------Categories-------------------
| Category | Label | Parent |
*************************************************
|/ | Home | NULL |
-------------------------------------------------
| leasing | Leasing |/ |
-------------------------------------------------
| leasing-steps | Leasing Steps | leasing |
-------------------------------------------------
| new-tenant | New Tenants | leasing-steps |
-------------------------------------------------
| properties | Properties | leasing |
-------------------------------------------------
| about | About Us |/ |
-------------------------------------------------
我收到一個變量(類別),假設值是'leasing-steps'
。
我需要想出一個SQL查詢,它將能夠採取任何類別,並以正確的順序給我它的層次結構。在這個例子中('leasing-steps'
),那就要輸出這樣的:
---Categories---
| Category |
*****************
|/ |
-----------------
| leasing |
-----------------
| leasing-steps |
-----------------
我嘗試這樣做:
SELECT `Cat1`.`Category`
FROM Categories AS `Cat1`
LEFT JOIN Categories AS `Cat2` ON `Cat1`.`Parent`
WHERE `Cat1`.`Category` = 'leasing-steps'
但它只是給了我1個條目,而不是期望的結果。
請記住,我正與未知數的父母工作。它可能是1級或99999
看到這個答案 - http://stackoverflow.com/a/11035966/689579 – Sean
這可能是由PHP循環來完成,以獲得父母/類別,並用新值查詢,直到你得到了所有但修改數據庫模型或添加存儲過程/過程會更好。 – Class