Bài giảng Cơ sở dữ liệu - Chương 7: SQL căn bản - Trịnh Hoàng Nam
CÁC THÀNH PHẦN
CỦA MỘT CÂU TRUY VẤN SQL
Câu truy vấn SQL
• Xác định các thông tin cần thiết
• Xác định (các) quan hệ chứa các thông tin đó
• Xác định (các) điều kiện
• Xác định (các) thông tin trả về
Bạn đang xem tài liệu "Bài giảng Cơ sở dữ liệu - Chương 7: SQL căn bản - Trịnh Hoàng Nam", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Cơ sở dữ liệu - Chương 7: SQL căn bản - Trịnh Hoàng Nam
9/3/2018 1 SQL CĂN BẢN CƠ SỞ DỮ LIỆU Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u NỘI DUNG Phép toán trên một quan hệ Phép toán tập hợp Phép toán trên nhiều quan hệ Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u CÁC THÀNH PHẦN CỦA MỘT CÂU TRUY VẤN SQL Câu truy vấn SQL • Xác định các thông tin cần thiết • Xác định (các) quan hệ chứa các thông tin đó • Xác định (các) điều kiện • Xác định (các) thông tin trả về Quy trình xây dựng câu truy vấn SELECT FROM WHERE Trích xuất dữ liệu theo yêu cầu từ các bảng dữ liệu hiện có 9/3/2018 2 Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP CHỌN Định nghĩa • Liệt kê nhân viên trong đơn vị số 1 Ví dụ SELECT * FROM R WHERE C Chọn từ quan hệ R các bộ dữ liệu thỏa mãn điều kiện C SELECT * FROM EMPLOYEE WHERE DNUM = 1 Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP CHỌN • Điều kiện chọn là một biểu thức lôgic kết hợp các phép so sánh bởi các phép nối lôgic AND, OR, và NOT Điều kiện chọn • Liệt kê nhân viên làm việc trong đơn vị số 1 và có mức lương trên $85,000/năm Ví dụ SELECT * FROM EMPLOYEE WHERE DNUM = 1 AND ESALARY > 85000 9/3/2018 3 Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP CHIẾU Định nghĩa • Liệt kê tên và mức lương cơ bản của tất cả nhân viên trong công ty Ví dụ SELECT L FROM R Chia quan hệ R thành hai phần: • Phần được chọn chứa các thuộc tính chiếu L • Phần không được chọn chứa các thuộc tính còn lại SELECT Ename, Esalary FROM EMPLOYEE Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP CHIẾU • Phép chiếu được áp dụng lên các thuộc tính và các biểu thức tính toán dựa trên các thuộc tính đó Thuộc tính chiếu • Liệt kê tên và lương thực lãnh của nhân viên, biết lương thực lãnh bằng hai lần mức lương cơ bản Ví dụ SELECT Ename, 2*ESalary FROM EMPLOYEE Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP SẮP XẾP • Sắp xếp các bộ trong quan hệ R theo trật tự tăng (giảm) đối với một (số) thuộc tính • Sử dụng mệnh đề ORDER BY Định nghĩa • Liệt kê các nhân viên trong phòng số 1 theo thứ tự giảm dần của lương Ví dụ SELECT FROM WHERE ORDER BY EMPLOYEE dNum = 5 * ESalary DESC 9/3/2018 4 Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u BÀI TẬP Liệt kê thông tin tất cả nhân viên nữ trong công ty Liệt kê tên và lương của các nhân viên nữ có mức lương trên 30.000 Liệt kê tên, mã đơn vị và mức lương của các nhân viên nữ ở đơn vị số 1 có mức lương trên 30.000 hoặc ở đơn vị khác và có mức lương dưới 45.000 DEPARTMENT DNumber DName mgrSSN mgrStartdate DEPENDENT DName ESSN DSex DBirthdate DRelationship DEPLOCATION DNum DLocation EMPLOYEE ESSN EName ESalary ESex EBirthdate EStartdate DNum supervisorSSN PROJECT PNumber PName PLocation DNum WORKSON ESSN PNum workHours Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP TOÁN TẬP HỢP • Quan hệ là một tập hợp, giữa hai quan hệ có các phép toán tập hợp như phép hợp, phép giao, và phép trừ Định nghĩa • Hai quan hệ được gọi là khả hợp, nếu có cùng số thuộc tính, và cùng miền giá trị cho từng cặp thuộc tính tương ứng Điều kiện khả hợp • Các bộ dữ liệu trùng nhau bị loại bỏ ra khỏi kết quả của các phép toán tập hợp • Lược đồ của quan hệ kết quả là lược đồ của quan hệ đứng trước trong phép toán Chú ý 9/3/2018 5 Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP HỘI • Quan hệ kết quả của phép hội (Union) của hai quan hệ R và S chứa đúng tất cả các bộ của các quan hệ này. Định nghĩa • Liệt kê tên các nhân viên thuộc đơn vị số 1 và số 2 Ví dụ SELECT FROM WHEREEMPLOYEE DNum=1EName UNION SELECT FROM WHEREEMPLOYEE DNum=2EName Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP GIAO • Quan hệ kết quả của phép giao (Intersect) của hai quan hệ R và S chứa đúng tất cả các bộ thuộc đồng thời cả hai quan hệ này. Định nghĩa • Liệt kê danh sách mã nhân viên tham gia cả hai dự án số 1 và số 2 Ví dụ SELECT FROM WHEREWORKSON PNum=1ESSN INTERSECT SELECT FROM WHEREWORKSON PNum=2ESSN Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP TRỪ • Quan hệ kết quả của phép trừ (Except) của hai quan hệ R và S chứa các bộ chỉ thuộc quan hệ R mà không thuộc quan hệ S. Định nghĩa • Liệt kê tên mã số các nhân viên chỉ tham gia dự án số 1 và không tham gia dự án số 2 Ví dụ SELECT FROM WHEREWORKSON PNum=1ESSN EXCEPT SELECT FROM WHEREWORKSON PNum=2ESSN 9/3/2018 6 Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u BÀI TẬP Liệt kê mã số các nhân viên chưa từng tham gia dự án Liệt kê tên, lương các nhân viên không chịu sự giám sát của bất kỳ nhân viên nào khác DEPARTMENT DNumber DName mgrSSN mgrStartdate DEPENDENT DName ESSN DSex DBirthdate DRelationship DEPLOCATION DNum DLocation EMPLOYEE ESSN EName ESalary ESex EBirthdate EStartdate DNum supervisorSSN PROJECT PNumber PName PLocation DNum WORKSON ESSN PNum workHours Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP NHÂN CHÉO Định nghĩa Ví dụ SELECT * FROM R, S Tổ hợp các bộ từ hai quan hệ R và S một cách ngẫu nhiên ? 9/3/2018 7 Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP NHÂN CHÉO • Mỗi bộ trong quan hệ kết quả của phép nhân chéo R với S là tổ hợp của một bộ trong R với một bộ trong S Định nghĩa • Hai quan hệ tham gia không cần khả hợp • Nếu R có nR thuộc tính, mR bộ, S có nS thuộc tính, mS bộ thì quan hệ kết quả của phép nhân chéo R với S có nR+nS thuộc tính và mR*mS bộ Một số đặc trưng Phép nhân chéo không thực sự có nhiều ý nghĩa Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP KẾT THETA Định nghĩa Ví dụ SELECT * FROM R, S WHERE C Tổ hợp các bộ từ hai quan hệ R và S thỏa mãn điều kiện C ? Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u PHÉP KẾT THETA • Mỗi bộ trong quan hệ kết quả kết theta R với S theo điều kiện C là tổ hợp của một bộ trong R với một bộ trong S sao cho thỏa mãn điều kiện kết C Định nghĩa • Hai quan hệ tham gia không cần khả hợp • Phép kết theta là phép chọn điều kiện C của một phép nhân chéo Một số đặc trưng 9/3/2018 8 Ths. Trịnh Hoàng Nam, namth@buh.edu.vn C ơ s ở d ữ l i ệ u – T ổ n g q u a n h ệ t h ố n g c ơ s ở d ữ l i ệ u BÀI TẬP Liệt kê tên, tuổi, mức lương của các nhân viên trong phòng Kinh doanh Liệt kê các dự án do phòng Kinh doanh quản lý Liệt kê tên, tuổi của các nhân viên đã từng tham gia các dự án do phòng Kinh doanh quản lý DEPARTMENT DNumber DName mgrSSN mgrStartdate DEPENDENT DName ESSN DSex DBirthdate DRelationship DEPLOCATION DNum DLocation EMPLOYEE ESSN EName ESalary ESex EBirthdate EStartdate DNum supervisorSSN PROJECT PNumber PName PLocation DNum WORKSON ESSN PNum workHours
File đính kèm:
- bai_giang_co_so_du_lieu_chuong_7_sql_can_ban_trinh_hoang_nam.pdf