Tôi thích sử dụng Đường dẫn vật chất hóa , vì nó về cơ bản chứa đường dẫn breadcrumb của bạn và giúp bạn dễ dàng thực hiện những việc như chọn tất cả các phần tử con của một nút mà không cần sử dụng truy vấn đệ quy.
Mô hình đường dẫn vật chất hóa
Ý tưởng với mô hình đường dẫn Vật liệu hóa là liên kết mỗi nút trong hệ thống phân cấp với vị trí của nó trong cây. Điều này được thực hiện với một danh sách nối tất cả các nút tổ tiên. Danh sách này thường được lưu trữ trong một chuỗi phân cách. Lưu ý trường “Linage” bên dưới.
CAT_ID NAME CAT_PARENT Lineage
1 Home .
2 product 1 .1
3 CD’s 2 .1.2
4 LP’s 2 .1.2
5 Artists 1 .1
6 Genre 5 .1. 5
7 R&B 6 .1. 5.6
8 Rock 6 .1. 5.6
9 About Us 1 .1
Duyệt qua bảng
Select lpad('-',length(t1.lineage))||t1.name listing
From category t1, category t2
Where t1.lineage like t2.lineage ||'%'
And t2.name = 'Home';
Order by t1.lineage;
Danh sách
Home
-product
–CD’s
–LP’s
-Artists
–Genre
—R&B
—Rock
-About Us