Truy cập dữ liệu từ cơ sở dữ liệu
Session Truy cập liệu từ sở liệu Mục tiêu học Mô tả câu lệnh SELECT, cú pháp sử dụng Giải thích làm để sử dụng biểu thức với câu lệnh SELECT Giải thích mệnh đề khác sử dụng với SELECT Trạng thái sử dụng mệnh đề ORDER BY RDBMS and Data Management/ Session 9/2 of 35 Câu lệnh SELECT - Hiển thị thông tin yêu cầu bảng - Truy xuất hàng cột từ nhiều bảng - Đầu câu lệnh SELECT bảng khác gọi tập kết (Result Set) - Nối (join) hai bảng truy xuất tập cột từ hay nhiều bảng Syntax: SELECT … FROM RDBMS and Data Management/ Session 9/3 of 35 Câu lệnh SELECT SELECT Emp_No, Emp_Name, Emp_DOB, Emp_DOJ FROM Employee Emp_No Emp_Name Emp_DOB Emp_DOJ 345 James 24-Sep-1968 30-May-1990 873 Pamela 27-Jul-1970 19-Nov-1993 693 Allan 10-Sep-1970 01-Jul-1992 305 Geoff 12-Feb-1973 29-Oct-1996 Tập kết RDBMS and Data Management/ Session 9/4 of 35 SELECT khơng có FROM Xuất: SQL Server cho phép sử dụng câu lệnh SELECT khơng có FROM Ví dụ: SELECT LEFT(‘International’,5) RDBMS and Data Management/ Session 9/5 of 35 Hiển thị tất cột Dấu hoa thị (*) sử dụng để truy xuất tất cột từ bảng Cú pháp: SELECT * FROM Ví dụ: SELECT * FROM Sales.Individual RDBMS and Data Management/ Session 9/6 of 35 Hiển thị cột chọn Một danh sách cột sử dụng để hiển thị cột thích hợp mà chọn người dùng Cú pháp: SELECT FROM Ví dụ: SELECT LocationID,CostRate FROM Production.Location RDBMS and Data Management/ Session 9/7 of 35 Các biểu thức khác với SELECT Các biểu thức cho phép người dùng thấy tập kết trật tự mong đợi Chúng sử dụng để gán tên khác cho cột, tính tốn giá trị loại trừ giá trị trùng tập kết RDBMS and Data Management/ Session 9/8 of 35 Sử dụng tập kết Các chuỗi ký tự sử dụng để nối (join) các cột ký tự giúp thích hợp việc định dạng Ví dụ: SELECT [Name] +’ : ‘+ CountryRegionCode + ‘ > ’ +[Group] FROM Sales.SalesTerritory RDBMS and Data Management/ Session 9/9 of 35 Đổi tên cột tập kết Các đầu mục (Heading) thay đổi, đổi tên gán cho tên việc sử dụng mệnh đề as Ví dụ: SELECT ModifiedDate as ‘ChangedDate’ FROM Sales.Individual RDBMS and Data Management/ Session 9/10 of 35 SELECT với WHERE 6-6 OR hiển thị tất hàng thỏa mãn điều kiện Ví dụ: SELECT * FROM Sales.CustomerAddress WHERE AddressID < 900 OR AddressTypeID = Phép tốn NOT phủ định điều kiện tìm kiếm Ví dụ: SELECT * FROM Sales.CustomerAddress WHERE NOT AddressTypeID = RDBMS and Data Management/ Session 9/21 of 35 Mệnh đề GROUP BY 1-2 Từ khóa GROUP BY phân chia tập kết thành nhiều tập Từ khóa GROUP BY theo danh sách cột, biết cột nhóm Cho cột nhóm, có hàng Tuy nhiên, có nhiều cột nhóm RDBMS and Data Management/ Session 9/22 of 35 Mệnh đề GROUP BY 2-2 Xuất Cú pháp: SELECT FROM GROUP BY Ví dụ: SELECT WorkOrderID,SUM(ActualResourceHrs) FROM Production.WorkOrderRouting GROUP BY WorkOrderID RDBMS and Data Management/ Session 9/23 of 35 GROUP BY với WHERE Xuất Giới hạn hàng cho việc nhóm Nhóm hàng mà thỏa mãn điều kiện tìm kiếm Ví dụ: SELECT [Group],SUM(SalesYTD) AS ‘TotalSales’ FROM Sales.SalesTerritory WHERE [Group] LIKE ‘N%’ OR [Group] LIKE ‘E%’ GROUP BY [Group] RDBMS and Data Management/ Session 9/24 of 35 GROUP BY với NULL Một hàng riêng biệt tạo thành, cột nhóm chứa đựng giá trị NULL Nếu cột nhóm chứa đựng nhiều giá trị NULL, giá trị NULL đặt vào hàng đơn Ví dụ: SELECT Class, AVG (ListPrice) AS ‘AverageListPrice’ FROM Production.Product GROUP BY Class RDBMS and Data Management/ Session 9/25 of 35 GROUP BY với ALL Xuất GROUP BY với ALL bao gồm tất nhóm dạng mệnh đề GROUP BY Cú pháp: SELECT FROM WHERE GROUP BY ALL Ví dụ: SELECT [Group],SUM(SalesYTD) AS ‘TotalSales’ FROM Sales.SalesTerritory WHERE [Group] LIKE ‘N%’ OR [Group] LIKE ‘E%’ GROUP BY ALL [Group] RDBMS and Data Management/ Session 9/26 of 35 GROUP BY với HAVING Xuất Nó điều kiện cho nhóm Cú pháp: SELECT FROM GROUP BY HAVING Ví dụ: SELECT [Group],SUM(SalesYTD) AS ‘TotalSales’ FROM Sales.SalesTerritory GROUP BY [Group] HAVING SUM(SalesYTD) < 6000000 RDBMS and Data Management/ Session 9/27 of 35 Tổng kết liệu 1-5 Dữ liệu tổng kết sử dụng phép toán like CUBE ROLLUP Số lượng cột mệnh đề GROUP BY xác định số lượng hàng tổng kết tập kết RDBMS and Data Management/ Session 9/28 of 35 Tổng kết liệu 2-5 CUBE: Nó đưa hàng siêu kết hợp Nó đưa tổng kết hàng mà mệnh đề GROUP BY sinh Nó hiển thị NULL tập kết trả tất giá trị RDBMS and Data Management/ Session 9/29 of 35 Tổng kết liệu 3-5 Xuất Cube: Cú pháp: SELECT FROM GROUP BY WITH CUBE Ví dụ: SELECT [Name],CountryRegionCode,SUM(SalesYTD) AS TotalSales FROM Sales.SalesTerritory WHERE [Name] ‘Australia’ AND [Name] ‘Canada’ GROUP BY [Name], CountryRegionCode WITH CUBE RDBMS and Data Management/ Session 9/30 of 35 Tổng kết liệu 4-5 ROLLUP: Nó sinh tập kết mà nhóm xếp theo thứ tự thừa kế Nó xếp nhóm từ thấp đến cao Nhóm thừa kế phụ thuộc vào thứ tự cột nhóm RDBMS and Data Management/ Session 9/31 of 35 Tổng kết liệu 5-5 Xuất ROLLUP: Cú pháp: SELECT FROM GROUP BY WITH ROLLUP Ví dụ: ECT [Name],SUM(SalesYTD) AS TotalSales FROM es.SalesTerritory GROUP BY [Name]WITH ROLLUP RDBMS and Data Management/ Session 9/32 of 35 Mệnh đề ORDER BY ORDER BY: Chỉ thứ tự cột xếp tập kết Sắp xếp tập kết theo thứ tự tăng dần (ASC) giảm dần (DESC) Trong trường hợp nhiều trường, trường bên trái xem cấp độ để xếp RDBMS and Data Management/ Session 9/33 of 35 Mệnh đề ORDER BY Xuất Cú pháp: SELECT FROM ORDER BY {ASC|DESC} Ví dụ: SELECT * FROM Sales.SalesTerritory ORDER BY SalesLastYear RDBMS and Data Management/ Session 9/34 of 35 Tổng kết Đầu câu lệnh SELECT gọi tập kết Câu lệnh SELECT định nghĩa cột sử dụng truy vấn Dấu hoa thị (*) sử dụng để hiển thị tất cột bảng Mệnh đề AS giúp sửa tên cột tập kết Một điều kiện luận lý (boolean) sử dụng mệnh đề WHERE để kiểm tra điều kiện hàng Phép toán CUBE ROLLUP sử dụng với mệnh đề GROUP BY để tổng kết liệu Mệnh đề ORDER BY thứ tự cột xếp tập kết RDBMS and Data Management/ Session 9/35 of 35 ... Hiển thị thông tin yêu cầu bảng - Truy xuất hàng cột từ nhiều bảng - Đầu câu lệnh SELECT bảng khác gọi tập kết (Result Set) - Nối (join) hai bảng truy xuất tập cột từ hay nhiều bảng Syntax: SELECT... liệu 1-5 Dữ liệu tổng kết sử dụng phép toán like CUBE ROLLUP Số lượng cột mệnh đề GROUP BY xác định số lượng hàng tổng kết tập kết RDBMS and Data Management/ Session 9/28 of 35 Tổng kết liệu. .. giá trị tập kết Các biểu thức toán học cho phép tập kết chứa đựng giá trị tính tốn từ giá trị lưu trữ CSDL sở Ví dụ: SELECT ProductID,StandardCost,StandardCost * 0.15 as Discount FROM Production.ProductCostHistory