Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 46 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
46
Dung lượng
566,21 KB
Nội dung
Chương CÂU LỆNH SQL Lý thuyết: 4t Thực hành: 4t Chương Câu lệnh SQL 2- 1/46 Câu lệnh SQL MỤC TIÊU Viết cú pháp lệnh SELECT Câu lệnh Select có điều kiện xếp liệu Viết câu lệnh select lấy liệu từ nhiều bảng Áp dụng câu lệnh select giải toán cụ thể Đánh giá so sánh câu lệnh select với cách lọc liệu Excel Chương Câu lệnh SQL 2- 2/46 Câu lệnh SQL 2.1 Giới thiệu Chiết xuất liệu từ sở liệu câu lệnh SELECT Giới hạn liệu hiển thị sau truy vấn Môi trường làm việc iSQL*Plus Chương Câu lệnh SQL 2- 3/46 Câu lệnh SQL 2.2 Câu lệnh SELECT truy xuất dữ liệu từ hay nhiều bảng, khung nhìn Cú pháp SELECT *|[DISTINCT] column|expression [alias], FROM table; Trong đó: * Lấy tất các cột bảng DISTINCT Loại bỏ trùng lặp dòng liệu FROM table Bắt buộc phải có Chương Câu lệnh SQL 2- 4/46 Câu lệnh SQL 2.2 Câu lệnh SELECT Ý nghĩa Chọn lọc mẫu tin theo cột quy định (column) hay biểu thức (expression) cho cột đó Ví dụ: SELECT * FROM Emp; Chương Câu lệnh SQL 2- 5/46 Câu lệnh SQL 2.2 Câu lệnh SELECT Chọn tất cột SELECT * FROM Dept; Chương Câu lệnh SQL 2- 6/46 Câu lệnh SQL 2.2 Câu lệnh SELECT Chọn cột định SELECT DeptId DEPARTMENT_ID, DeptName DEPARTMENT_NAME FROM Dept; Chương Câu lệnh SQL 2- 7/46 Câu lệnh SQL 2.3 Viết câu lệnh SQL Quy tắc viết lệnh không phân biệt chữ viết hoa hay thường câu lệnh nhiều dịng từ khố khơng viết tắt, nhiều dịng sử dụng các phép toán: +, -, \, *, để biểu diễn giá trị câu lệnh kết thúc lệnh dấu chấm phẩy (;) Chương Câu lệnh SQL 2- 8/46 Câu lệnh SQL 2.3 Viết câu lệnh SQL Các thành phần câu lệnh Biểu thức tốn học Ví dụ: SELECT Name, Sal *12 FROM Emp; Tiêu đề cột (column alias) Ví dụ: (ANUAL column alias) SELECT Name, Sal*12 ANNUAL FROM Emp; Chương Câu lệnh SQL 2- 9/46 Câu lệnh SQL 2.3 Viết câu lệnh SQL Các thành phần câu lệnh Ghép tiếp cột liệu Ví dụ SELECT No||Name EmpLoyee FROM Emp; Ghép tiếp chuỗi ký tự Ví dụ: SELECT Name || ‘WORK IN’ || DeptNo FROM Emp; Chương Câu lệnh SQL 2- 10/46 Câu lệnh SQL 2.6 Giới hạn xếp liệu Cấp độ ưu tiên Cấp độ ưu tiên Toán tử Các toán tử so sánh NOT AND OR Chương Câu lệnh SQL 2- 32/46 Câu lệnh SQL 2.6 Giới hạn xếp liệu Sắp xếp liệu trả Mệnh đề ORDER BY SELECT [DISTINCT ] *, column [alias], FROM table [WHERE condition] [ORDER BY expr/position [DESC/ASC]]; DESC xếp giảm dần ASC xếp tăng dần Chương Câu lệnh SQL 2- 33/46 Câu lệnh SQL 2.6 Giới hạn xếp liệu Sắp xếp liệu trả Mệnh đề ORDER BY ORDER BY dùng để xếp dữ liệu hiển thị phải đặt vị trí sau câu lệnh truy vấn Ví dụ SELECT Ename, Job, Sal*12, DeptNo FROM Emp ORDER BY Ename; Chương Câu lệnh SQL 2- 34/46 Câu lệnh SQL 2.6 Giới hạn xếp liệu Sắp xếp liệu trả Sắp xếp nhiều cột liệu trả SELECT DeptNo, Job, Ename, Sal FROM Emp ORDER BY DeptNo, Sal DESC; SELECT DeptNo, Job, ename, Sal FROM Emp ORDER BY 2; Chương Câu lệnh SQL 2- 35/46 Câu lệnh SQL 2.7 Liên kết nhiều bảng liên kết hai hay nhiều bảng có quan hệ với SELECT table1.column, table2.column,… FROM table1, table2 WHERE table1.column1 operator table2.column2; table1.column1 operator table2.column2: Điều kiện liên kết hai bảng với Chương Câu lệnh SQL 2- 36/46 Câu lệnh SQL 2.7 Liên kết nhiều bảng Một số quy tắc Nếu tên cột giống nhiều bảng phải viết tên bảng trước tên cột (table1.column) Để liên kết n bảng với nhau, cần tối thiểu n-1 điều kiện liên kết Ví dụ Hiển thị tất khách hàng đặt hàng SELECT Customers.ID, FirstName, Orders.ID,ShipDate FROM Customers, Orders WHERE Customers.ID= Orders.CustID; Chương Câu lệnh SQL 2- 37/46 Câu lệnh SQL 2.7 Liên kết nhiều bảng Liên kết tương đương (Equi-Joins) liên kết chứa toán tử tương đương (=), thể mệnh đề WHERE Ví dụ Hiển thị thơng tin về mã VN, tên phòng ban, nhân viên SELECT Firstname, DeptName FROM Emp, Dept WHERE Emp.DeptID = Dept.DeptID; Chương Câu lệnh SQL 2- 38/46 Câu lệnh SQL 2.7 Liên kết nhiều bảng Liên kết không tương đương (NonEqui-Joins) điều kiện liên kết chứa tốn tử khơng phải toán tử tương đương thể mệnh đề WHERE Ví dụ SELECT E.Ename, E.Job, S.Grade FROM Emp E, SalGrade S WHERE E.Sal BETWEEN S.LoSal AND S.HiSal; Chương Câu lệnh SQL 2- 39/46 Câu lệnh SQL 2.7 Liên kết nhiều bảng Liên kết với (Self-Joins) liên kết bảng với để lấy thơng tin cách đặt alias Ví dụ Hiển thị danh sách nhân viên và người quản lý họ dạng “A work for B” SELECT E.Ename || ‘ Work for ’ || M.ename FROM Emp E, Emp M WHERE E.managerId = M.EmpId; Chương Câu lệnh SQL 2- 40/46 Câu lệnh SQL 2.7 Liên kết nhiều bảng Liên kết cộng (Outer-Joins) trả giá trị NULL biểu thức điều kiện Dấu (+) để vế tính thêm giá trị NULL vế Một câu lệnh SELECT đặt mối liên kết cộng, dấu (+) đặt bên phải cột liên kết Một điều kiện chứa liên kết cộng không dùng toán tử IN OR để nối điều kiện liên kết khác Chương Câu lệnh SQL 2- 41/46 Câu lệnh SQL 2.7 Liên kết nhiều bảng Liên kết cộng (Outer-Joins) SELECT table1.column, table2.column FROM table1, table2 WHERE table1.col(+) = table2.col; Hoặc SELECT table1.column, table2.column FROM table1, table2 WHERE table1.col = table2.col(+); Chương Câu lệnh SQL 2- 42/46 Câu lệnh SQL 2.7 Liên kết nhiều bảng Liên kết cộng (Outer-Joins) Ví dụ SELECT E.Ename, D.Deptno, D.Dname FROM Emp E, Dept D WHERE E.Deptno(+) = D.Deptno And D.Deptno IN (30, 40); ENAME DEPTNO DNAME JAMES 30 WARD 30 40 SALES SALES OPERATIONS Chương Câu lệnh SQL 2- 43/46 Câu lệnh SQL Câu hỏi tập Trả lời câu hỏi phần 2.8 giáo trình Thực hành viết câu lệnh truy vấn phần tập Chuẩn bị nội dung chương Chương Câu lệnh SQL 2- 44/46 Chương HỌC GÌ – NHỚ GÌ? Chương Câu lệnh SQL 2- 45/46 Chương Hàm SQL Nội dung Cú pháp hàm SQL Áp dụng hàm giải toán cụ thể Đánh giá so sánh hàm SQL với hàm excel Chương Câu lệnh SQL 2- 46/46 ... Emp; Chương Câu lệnh SQL 2- 12/46 Câu lệnh SQL 2.4 Tương tác SQL iSQL*Plus SQL* Plus cho phép tương tác trực tiếp với Oracle Server thông qua câu lệnh SQL PL /SQL Chương Câu lệnh SQL 2- 13/46 Câu. .. định nghĩa sở liệu SQL* Plus Nhận dạng lệnh SQL gửi lệnh lên Server Tùy thuộc vào phiên Oracle Không thao tác với liệu sở liệu Chương Câu lệnh SQL 2- 14/46 Câu lệnh SQL 2.4 Tương tác SQL iSQL*Plus... Chương Câu lệnh SQL 2- 19/46 Câu lệnh SQL 2.4 Tương tác SQL iSQL*Plus Các lệnh sau tự xem sách! Lệnh soạn thảo Lệnh thao tác file Lệnh định dạng cột liệu Chương Câu lệnh SQL 2- 20/46 Câu lệnh