我有一個設置爲[id,name,parent_id]和項目表[id,name,category_id,visible]的類別表。我想要做的是創建一個查詢,它將返回所有非空類別的所有id,非空的是它或其中一個子項至少有一個屬於它的項目。在MySQL中執行此操作的最佳方式是什麼?查找樹中的所有非空類別
編輯
SELECT DISTINCT CATEGORY_ID從裝備
這適用於含項目類別,但我還需要包含類的項目的父類。此查詢將與其他一些過濾器一起用作子查詢。
頂級類別
- >二級類別
- >第三級分類
--->項目1
--->項目2
真正的問題是遞歸查詢。您的答案不會返回其子類別包含項目的類別。 – bbadour 2010-08-31 19:25:28
哦,你說得對。但是,儘管返回他們的父母可以完成,但是返回所有祖先不能用一個查詢來完成。 – Mewp 2010-08-31 19:30:36
我已經更新了我的答案,提出了另一種方法。 – Mewp 2010-08-31 19:45:04