Bạn đang cố gắng giải quyết một vấn đề phổ biến - làm cách nào để lưu trữ và truy xuất dữ liệu phân cấp trong cơ sở dữ liệu quan hệ?
Điều đầu tiên bạn nên làm là đọc bài viết này tại mysql.com, " Quản lý dữ liệu phân cấp trong MySQL " hoặc tại đây .
Ngay bây giờ, bạn đang sử dụng mô hình "danh sách kề". Nó có một số nhược điểm, chủ yếu trong số đó là thực tế là không thể viết một truy vấn sẽ trả về cho bạn tất cả các cây mà bạn đang lưu trữ.
Bạn có thể muốn xem xét chuyển sang mô hình "tập hợp lồng nhau", mô hình này đã được giải thích rõ ràng trên cùng trang đó.
http://dev.mysql.com/tech-resources/articles/hierarchical-data.html