Nếu bạn đang thực hiện nhiều truy vấn như vậy, bạn có thể thấy rằng mô hình tập hợp lồng nhau thích hợp hơn danh sách gần kề mà bạn đang hỏi. Có một cuộc thảo luận tốt về cả hai mô hình tại đây .
Trong mọi trường hợp, để thực hiện những gì bạn đang yêu cầu với danh sách gần kề mà bạn đang xem xét đệ quy trong lớp ứng dụng hoặc lưu trữ mức dưới dạng cột thứ 3.
ETA:nếu số cấp độ của bạn không quá cao, bạn có thể làm điều đó bằng cách tự tham gia:
ví dụ. các nút có 2 tổ tiên:
SELECT t1.node
FROM mytable AS t1
JOIN mytable AS t2 ON t1.parent = t2.node
JOIN mytable AS t3 ON t2.parent = t3.node
WHERE t3.parent IS NULL;