mysql 分類表設計


無限級分類表設計

作用: 可以實現在一張表中完成多層級分類,而無需分多個分類表逐一創建。

附上實例圖:

理解點:

1.parent_id 的作用
2.如何查詢表

parent_id

注意: 以下一級、二級分類都是在上面一張表實現的!

1.假設我有兩個一級分類為:衣服 褲子
2. 請問他們的parent_id 應該為多少? 答: 應該為0,一級是頂級分類,最高層級,所以按0開始
3. 請問二級分類的parent_id 應該為多少?答:應該為一級分類的category_id
4. 那三級分類呢? 答: 應該為二級分類的category_id
5.以此類推。。。

如何查詢

查詢表中數據,只需要通過將分類表當作數據來源即可。

比如我想查詢衣服一級分類下有多少個二級分類數據,這里假設衣服一級分類的category_id是1,那么只需如下這樣查詢

select * from category_table where parent_id = 1;
問: 為什么 parent_id 是等於1作為條件,就能查詢出二級分類呢?
答:因為二級分類的parent_id就是一級分類的category_id,以此類推,就能查詢無限級的分類了,無論條件多么復雜,查詢的數據來源都是來自一張分類表
注意: 有時候會需要復制自身來當作數據源比如在left join中 比如: select * from category_table as a left join category_table as b on 加上條件。。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM