Phòng nhân sự muốn liệt kê các cặp nhân viên làm cùng phòng để phân nhóm teambuilding. Mỗi cặp chỉ liệt kê một lần. Dùng self-join.
| Cột | Kiểu | Ý nghĩa |
|---|---|---|
| ma_nv | INT | Mã nhân viên |
| ho_ten | VARCHAR(100) | Họ tên |
| phong | VARCHAR(50) | Phòng ban |
Điều kiện a.ma_nv < b.ma_nv để tránh trùng cặp.
SETUP SQL tạo bảng nhanvien và chèn dữ liệu.
Mỗi cặp xuất hiện một lần, a.ma_nv<b.ma_nv.
Các cột nv1 (ho_ten người mã nhỏ), nv2 (ho_ten người mã lớn), phong; sắp theo phong tăng, nv1 tăng, nv2 tăng.
Ví dụ:
Đầu vào:
CREATE TABLE nhanvien (ma_nv INT, ho_ten VARCHAR(100), phong VARCHAR(50));
INSERT INTO nhanvien VALUES (1,'An','IT'),(2,'Bao','IT'),(3,'Cuong','HR');
Đầu ra:
An Bao IT
Giải thích:
Đang tải editor...