MySQL không hỗ trợ truy vấn đệ quy vì vậy bạn phải thực hiện nó một cách khó khăn:
- Chọn các hàng có
ParentID = X
ở đâuX
là gốc của bạn. - Thu thập
Id
giá trị từ (1). - Lặp lại (1) cho mỗi
Id
từ (2). - Tiếp tục đệ quy bằng tay cho đến khi bạn tìm thấy tất cả các nút lá.
Nếu bạn biết độ sâu tối đa thì bạn có thể nối bảng của mình với chính nó (sử dụng LEFT OUTER JOINs) đến độ sâu tối đa có thể và sau đó dọn sạch các NULL.
Bạn cũng có thể thay đổi biểu diễn cây của mình thành tập hợp lồng nhau .