1. Learn
  2. /
  3. Courses
  4. /
  5. Truy vấn phân cấp và đệ quy trong SQL Server

Connected

Exercise

Xác định vị trí trong hệ thống phân cấp

Một vấn đề quan trọng khi làm việc với đệ quy là theo dõi cấp độ đệ quy. Trong tổ chức CNTT, điều này có nghĩa là theo dõi vị trí của từng nhân viên trong hệ thống phân cấp.

A section of the entire hierarchy

Để làm điều này, bạn sẽ dùng trường LEVEL để ghi nhận bước đệ quy hiện tại. Bạn cần đưa trường này vào thành viên mỏ neo (anchor member) và tăng giá trị này ở mỗi bước đệ quy trong thành viên đệ quy.

Lưu ý: cấp phân cấp đầu tiên là 0, cấp thứ hai là 1, và cứ thế tiếp tục.

Instructions

100 XP
  • Khởi tạo trường LEVEL = 1 tại thời điểm bắt đầu đệ quy.
  • Chọn thông tin của giám đốc CNTT làm bước khởi đầu của CTE bằng cách lọc theo Supervisor.
  • Đặt LEVEL bằng với bước đệ quy hiện tại.
  • Thực hiện JOIN với CTE đã định nghĩa dựa trên ID của người quản lý và nhân viên.