Một số ví dụ về sử dụng câu lệnh truy vấn lồng nhau
Cho lược đồ cơ sở dữ liệu quản lý điểm
Sinhvien(masv, hoten, ngaysinh, phai, quequan)
Monhoc(mamon, tenmhoc, sotinchi)
Thi(masv, mamh, diemthi)
Phân tích: sinh viên không thi môn nào là những sinh viên có ở bảng sinhvien nhưng không xuất hiện ở bảng Thi. Điều đó có nghĩa masv của những sinh viên này không xuất hiện trong trường masv ở bảng thi. Câu lệnh có thể tham khảo như sau
Select *
From sinhvien
Where masv not in (select masv from thi)
Trong câu lệnh này chúng ta đã sử dụng câu truy vấn con lồng trong mệnh đề where để liệt kê các sinh siên tham gia dự thi.
Sau đó ta dùng toán tử NOT IN để loại trừ những sinh viên có tham gia thi.
Kết quả ta được các sinh viên không tham gia thi môn nào. Đây thực chất là phép trừ trong đại số quan hệ.
Câu lệnh tham khảo
Select masv, tenmhoc, diemthi
From sinh viên a, monhoc b, thi a
Where (a.masv=c.masv) and (b.mamh=c.mamh) and (tenmhoc=”cơ so du lieu”)
And (diemthi =( select (max (diemthi) from thi where (mamh=”csdl”))
» Tin mới nhất:
» Các tin khác: