Cỏc truy vấn lồng nhau

Một phần của tài liệu toàn tập bài giảng môn cơ sở dữ liệu full (Trang 115 - 120)

C -u và thư cơ d

Cỏc truy vấn lồng nhau

Để tỡm mó số và tờn những nhõn viờn phũng ‘Kỹ thuật’ cú thể dựng cõu truy vấn sau

SELECT manv, ho_ten

FROM nhan_vien

WHERE ma_dv IN

(SELECT ma_dv

FROM phong

WHERE ten_phong = ‘Kỹ thuật’);

58

Cỏc truy vấn lồng nhau

Xột cõu hỏi: ‘Tỡm tờn của những nhõn viờn cú lương đạt trờn mức lương trung bỡnh của tất cả cỏc nhõn viờn, đồng thời cho biết luụn mức chờnh lệch này’

SELECT ho_ten , luong – (SELECT AVG(luong) FROM

nhan_vien) AS hieu FROM nhan_vien WHERE luong > (SELECT AVG(luong) FROM nhan_vien); 59 NGễN NGỮ SQL

Cỏc truy vấn lồng nhau

Cõu ORDER BY khụng được sử dụng trong một cõu truy vấn con mặc dự nú cú thể được dựng trong cõu truy vấn ngoài

cựng.

Danh sỏch cỏc mục được liệt kờ bởi cõu truy vấn con

SELECT phải chứa tờn của một cột hoặc một biểu thức trừ phi cõu truy vấn con này dựng từ khúa EXISTS.

60

Cỏc truy vấn lồng nhau

Theo ngầm định, cỏc tờn cột trong cõu truy vấn con tham chiếu đến tờn bảng trong cõu FROM của truy vấn con này, hoặc cú thể tham chiếu đến bảng trong cõu FROM của truy vấn ngoài bằng việc xỏc định tờn cột đú.

Khi một cõu truy vấn con là một trong hai toỏn hạng của một biểu thức so sỏnh thỡ truy vấn con này phải xuất hiện ở vế phải của so sỏnh.

61

Cỏc truy vấn lồng nhau

Muốn biết thụng tin về những nhõn viờn làm việc cho đơn vị cú địa điểm là ’23 Lý Thường Kiệt’, cú thể dựng truy vấn như sau SELECT *

FROM nhan_vien

WHERE ma_dv IN

(SELECT ma_dv

FROM dia_diem_dv

WHERE dia_diem = ’23 Lý Thường Kiệt);

62

Cỏc truy vấn lồng nhau

“ Tỡm tờn và lương của những người cú lương cao hơn lương mọi nhõn viờn thuộc đơn vị mó P2 “.

Một phần của tài liệu toàn tập bài giảng môn cơ sở dữ liệu full (Trang 115 - 120)

Tải bản đầy đủ (DOCX)

(159 trang)
w