Theo cách bạn lưu trữ cây bây giờ, không thể lấy toàn bộ cây trong một truy vấn SQL thuần túy. Bạn cần viết một vòng lặp bằng một số ngôn ngữ khác (C #, thủ tục được lưu trữ hỗ trợ vòng lặp, ...) để tìm nạp cây.
Điều này là một bài viết hay mô tả cách làm việc với cách lưu trữ cây của bạn (bao gồm cả việc tìm nạp cây và xóa các mục khỏi cây).
Thú vị hơn nữa, bài viết đó cũng mô tả một cách lưu trữ cây trong bảng cơ sở dữ liệu mà hiện cho phép tìm nạp toàn bộ cây trong một truy vấn duy nhất. Nó được gọi là đặt hàng trước truyền tải cây . Bạn có thể tra cứu nó để biết thêm thông tin. Tôi đã tìm thấy một triển khai C # . Nó liên quan đến một số logic hơn so với cách bạn đang sử dụng hiện tại, nhưng hiệu quả hơn đối với tất cả trừ những cây nhỏ nhất.