Một bộ trong SQL được biểu diễn bằng một danh sách các giá trị vô hướng được đặt trong dấu ngoặc. Ví dụ: (5,’Nghiêncứu’, ‘NV002’, 2000- 09-15) là một bộ của quan hệ ĐƠNVỊ.
Nếu một bộ t có cùng số thành phần như một quan hệ R thì có thể so sánh t và R. Ví dụ: t IN R hoặc t<> ANY R (Chú ý rằng khi so sánh một bộ với các thành phần của một quan hệ R, chúng ta phải so sánh các thành phần theo thứ tự của các thuộc tính của R).
Ví dụ 18:
Giả sử ta muốn đưa ra Họđệm và tên của các nhân viên có lương cao nhất ở trong từng đơn vị. Ta viết truy vấn sau:
SELECT Họđệm, Tên
FROM NHÂNVIÊN
WHERE (Lương, MãsốĐV) IN
(SELECT (MAX(Lương), Mã sốĐV
FROM NHÂNVIÊN
GROUP BY Mã sốĐV);
Truy vấn này bao gồm một truy vấn chính và một truy vấn con. Truy vấn con khảo sát các bộ của quan hệ NHÂNVIÊN và đưa ra một quan hệ gồm các bộ với giá trị của các thuộc tính MAX(Lương) và MãsốĐV. Truy vấn chính, từ dòng 1) đến dòng 3) xem xét các bộ của quan hệ NHÂNVIÊN để tìm các bộ có thành phần Lương và MãsốĐV là một trong các bộ do truy vấn con đưa ra. Với mỗi bộ như vậy, Họđệm và Tên sẽ được đưa ra và cho chúng ta tập hợp những nhân viên có lương cao nhất trong từng đơn vị như chúng ta mong muốn.
Kết quả:
Họđệm Tên
Trần Đức Nam
Phạm Bằng Hoàng Giáp