Select Query (truy vấn với phép chọn, chiếu, kết nối)

Một phần của tài liệu Bài giảng tin học ứng dụng dành cho sinh viên ngành kinh tế (Trang 63 - 68)

Phần này minh họa lại cách thực hiện Query cho các ví dụ về các phép chọn, chiếu, kết nối trong chương về đại số quan hệ.

Ví dụ 01: Cho biết tên khoa của sinh viên có mã số ‘ 2 2’. Liệt kê các thông tin MaSV, HoSV, TenSV, TenKhoa.

Biểu thức đại số quan hệ cho truy vấn trên:

MaSV, HoSV, TenSV, TenKhoa [MaSV=’5202’(SinhVien ⋈MaKH = MaKhoa Khoa)] Tạo truy vấn trong Access:

Trong màn hình cơ sở dữ liệu, chọn mục Queries, sau đó chọn Create query in Design view để mở màn hình Show Table.

Trong màn hình Show Table, chọn và nhấn nút Add các table tham gia truy vấn (Khoa và SinhVien). Sau khi chọn xong, nhấn nút Close để trở về màn hình Design Query.

Màn hình design Query gồm hai phần:

 Phần A dùng để thể hiện các bảng tham gia truy vấn. Phần này cũng thể hiện mối quan hệ giữa các bảng và mối quan hệ đó được sử dụng làm phép kết nối bằng.

 Phần B gồm nhiều cột dùng để thực hiện các phép chọn và chiếu. Một cột trong phần B tương ứng với một cột trong phép chiếu.

Kéo thả (hoặc Double-Click) các trường liên quan đến truy vấn từ phần A vào các cột phần B. Dấu * đại diện cho tất cả các cột trong bảng.

Nhấn nút View Design để chuyển đổi giữa chế độ thiết kế Query và chế độ xem kết quả thực hiện phép kết nối giữa bảng SinhVien và Khoa: A B Các trường (cột) được chọn Bảng tham gia truy vấn Vùng nhập điều kiện của phép chọn Sắp xếp

Cho phép (không cho phép) hiển thị kết quả

Bổ sung phép chọn và phép chiếu:

 Kéo bốn cột MaSV, HoSV, TenSV, TenKhoa vào phần B.

 Thực hiện phép chọn MaSV = ' 2 2': gõ mệnh đề = ' 2 2' vào dòng Criteria

ứng với cột MaSV.

Kết quả thực hiện:

Ví dụ 02: Tạo cột mới (HoTen) từ 2 trường HoSV và TenSV

Chú ý: Tên cột mới đặt ở dòng Field có cấu trúc như sau

<Tên cột> : <Biểu thức>

Ví dụ: HoTen : [HoSV] + ' ' + [TenSV]

Ví dụ 0 : Biểu thức chọn có mệnh đề AND

Xét câu truy vấn: Liệt kê các sinh viên sinh năm và có học bổng trên 500. Year(NgaySinh)=1990 AND HocBong>300 (SinhVien)

Trong câu truy vấn này, biểu thức logic gồm 2 phần: Year(NgaySinh)=1990 và HocBong > được đặt ở phần Criteria:

Chú ý: Year([NgaySinh]) giống như là một thuộc tính mới nhưng không được hiện ra do không được chọn ở dòng Show.

Xét câu truy vấn: Liệt kê các sinh viên đạt mức học bổng từ đến 500

(HocBong>=300 AND HocBong <=500 (SinhVien) Lúc này có hai điều kiện chọn cho cùng một thuộc tính là HocBong

Hoặc sử dụng mệnh đề: Between AND 5 (adsbygoogle = window.adsbygoogle || []).push({});

Ví dụ 04: Biểu thức chọn có mệnh đề OR

Xét câu truy vấn: Liệt kê các sinh viên có tên bắt đầu là ‘T’ hoặc là ‘K’. (Ten LIKE 'T*' OR Ten LIKE 'K*') (SinhVien)

Ví dụ 0 : Liệt kê các môn học chưa mở lớp:

Điều kiện NOT IN (SELECT MaMH FROM LopHoc) nghĩa là: trong bảng môn học, hãy tìm các môn mà MaMH không có trong bảng LopHoc. Kết quả:

Ví dụ 0 : Sắp xếp và lựa dòng

Xét câu truy vấn: Chọn hai sinh viên đạt mức học bổng cao nhất. Trước tiên sắp xếp danh sách sinh viên theo học bổng từ cao đến thấp:

Sau đó trong màn hình Design, trên thanh công cụ, thay từ All thành 2:

Kết quả thực hiện:

Một phần của tài liệu Bài giảng tin học ứng dụng dành cho sinh viên ngành kinh tế (Trang 63 - 68)