1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Truy vấn phân cấp và đệ quy trong SQL Server

Connected

Bài tập

Ai là quản lý của bạn?

Trong bài tập này, bạn sẽ sử dụng bộ dữ liệu của một tổ chức IT được cung cấp trong bảng employee. Bảng này có các trường ID (mã nhân viên), Name (tên nhân viên) và Supervisor (mã người quản lý).

Tổ chức IT gồm nhiều vai trò và cấp bậc khác nhau.

A section of the entire hierarchy

Tổ chức có một giám đốc IT (ID=1, Heinz Griesser, Supervisor=0) với nhiều nhân viên cấp dưới. Dưới giám đốc IT là quản lý kiến trúc IT (ID=10, Andreas Sternig, Supervisor=1) với ba nhân viên cấp dưới. Với Andreas Sternig, Supervisor=1 chính là ID của giám đốc IT.

Đầu tiên, chúng ta muốn trả lời câu hỏi: Người quản lý (supervisor) của mỗi nhân viên là ai?

Chúng ta sẽ giải quyết vấn đề này bằng cách truy vấn đệ quy trên bộ dữ liệu.

Hướng dẫn

100 XP
  • Tạo một CTE tên là employee_hierarchy.
  • Chọn thông tin của giám đốc IT làm bước khởi đầu của CTE bằng cách lọc theo ID Supervisor của ông ấy.
  • Thực hiện join với employee để lấy tên của người quản lý.