Danh mục

Bài giảng Chương 3: SQL Structured Query Language (Phần 1)

Số trang: 40      Loại file: ppt      Dung lượng: 320.00 KB      Lượt xem: 13      Lượt tải: 0    
Jamona

Xem trước 4 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Chương 3: SQL Structured Query Language (Phần 1) nêu lên ngôn ngữ thao tác dữ liệu - DML; lệnh Select; câu truy vấn đơn giản; lệnh Select - mệnh đề Where; lệnh Select – sử dụng các hàm thống kê; truy vấn lồng - Subqueries; lệnh Select – truy vấn từ nhiều bảng.
Nội dung trích xuất từ tài liệu:
Bài giảng Chương 3: SQL Structured Query Language (Phần 1) Chương 3 SQL Structured Query Language Phần 1 Giới thiệu  SQL là ngôn ngữ CSDL Quan hệ chuẩn  Được sử dụng trong các DBMS thương mại  Được phát triển từ IBM (vào đầu 70s, Sequel)  Phiên bản chuẩn được ANSI công bố đầu tiên vào 1986  SQL là ngôn ngữ khai báo cấp cao  Người dùng chỉ ra kết quả cần đạt là gì  Tối ưu hóa và quyết định thi hành ntn là do DBMS Giới thiệu  SQL bao gồm các phần :  DDL (Data Definition Language)  Định nghĩa Database  Định nghĩa cấu trúc Bảng  Định nghĩa ràng buộc toàn vẹn  Định nghĩa khung nhìn  DML (Data Manipulation Language)  Truy vấn dữ liệu  Các thao tác thêm, xóa , sửa dữ liệu  Kiểm soát các transaction  DCL (Data Control Language)  Phân quyền người dùng Giới thiệu  Trongmột số DBMS, SQL được mở rộng để tăng khả năng lập trình thủ tục  T-SQL trong MS SQL Server cho phép  dùng cấu trúc điều khiển, biến cục bộ, cursor  Tạo các procedure, trigger Ngôn ngữ thao tác dữ liệu - DML  DML bao gồm các lệnh : SELECT, INSERT, UPDATE, DELETE  Lệnh Select là lệnh thường dùng nhất  Dùng để truy vấn dữ liệu (query data)  Lấy và hiển thị dữ liệu từ một hay nhiều bảng Lệnh Select  Cú pháp : SELECT [ DISTINCT | ALL] [ * | têncột [AS tên mới] [,…] FROM tênbảng [alias] [,…] [WHERE điềukiện ] [GROUP BY danhsáchcột ] [HAVING điềukiện ] [ORDER BY danhsáchcột ] (*) Các ví dụ trong chương này sử dụng CSDL Quản lý Bán hàng , xem slide cuối Câu truy vấn đơn giản  Câu lệnh Select… From… Vd: Hiển thị Họ, tên , phái của các nhân viên Select Honv, Tennv, Phai From Nhanvien Tương đương với phép chiếu trong ĐSQH Honv, Tennv, Phai (NHANVIEN)  Hiển thị tất cả các cột , bằng sử dụng * Vd: Hiển thị danh sách các nhân viên Select * From Nhanvien Câu truy vấn đơn giản  Sử dụng Distinct để loại bỏ các bộ trùng nhau Vd: Danh sách nơi sinh của các nhân viên Select DISTINCT noisinh From Nhanvien Câu truy vấn đơn giản  Hiển thị các cột tính toán (Calculated fields)  Sử dụng hàm trong cột tính toán  Các cột có thể đặt tên mới – alias Vd1: hiển thị chi tiết hóa đơn gồm mahd, masp, soluong, dongia và thành tiền Select mahd, masp, soluong,dongia, soluong*dongia AS thanhtien From chitiethoadon Vd2: hiển thị họ tên, và năm sinh của nhân viên Select Honv+Tennv as HT , year(ngaysinh) as NS From Nhanvien Lệnh Select - Mệnh đề Where  Sử dụng để chọn một số bộ  Chứa các biểu thức logic, xác định các bộ sẽ được chọn :  Các cột nằm trong bảng có trong mệnh đề From  Các toán tử so sánh, toán tử logic And, Or, Not, tóan tử Between  Các toán tử khác : Like, in, … Lệnh Select - Mệnh đề Where  Vd1: Hiển thị các mặt hàng có đơn giá >100 Select Tensp , dongia From Sanpham Where dongia > 100  Vd2: Hiển thị các mặt hàng có đơn giá >100 hoặc đơn giá 100 or dongia < 50  Vd3: Hiển thị các mặt hàng có đơn giá trong khoảng từ 50 đến 100 Select Tensp , dongia From Sanpham Where dongia between 50 and 100 Lệnh Select - Mệnh đề Where  Sử dụng toán tử Like/ Not Like trong biểu thức so sánh với chuỗi  Like khác với toán tử =  Sử dụng các ký tự thay thế %, _ Vd4: Hiển thị danh sách nhân viên có họ “Nguyễn” Select * From Nhanvien Where Honv like “Nguyễn%”  Vd5: hiển thị danh sách các nhân viên có địa chỉ ở đường Nguyễn Trãi Lệnh Select - Mệnh đề Where  Sử dụng IS NULL / IS NOT NULL để so sánh với giá trị NULL Vd: Hiển thị danh sách các Nhân viên chưa biết số điện thoại Select * From Nhanvien Where dienthoai IS NULL Vd: mệnh đề Where có thể chứa biểu thức cột select Honv, Tennv From Nhanvien where left(Honv,1) like ‘N' Lệnh Select - Mệnh đề Order By  Sắp xếp các bộ trong quan hệ kết quả theo giá trị của một / một số cột  Sử dụng ASC hay DESC để chỉ ra chiều sắp xếp (mặc định là ASC)  Vd Select * From Nhanvien Order by Ngaysinh ASC, Tennv DESC Lệnh Select – sử dụng các hàm thống kê  Còn gọi là Aggregate Functions  Hàm Count, Sum, Avg, Min, Max Vd: hiển thị tổng trị giá tất cả các hóa đơn Select sum(soluong*dongia) From Chitiethoadon Vd: Hiển thị đơn giá lớn nhất, nhỏ nhất và trung bình của các mặt hàng Select Max(dongia) , Min(dongia), AVG(dongia) From Sanpham Lệnh Select – sử dụng các hàm thống kê  Hàm count(tencot), count(*) và count(distinct) Vd1: cho biết số lượng nhân viên Select Count(Noisinh) From Nhanvien Select Count(Distinct Noisinh) From Nhanvien Select Count(*) From Nhanvien Vd2: Hiển thị tổng số hóa đơn , tổng trị giá các hóa đơn ? Lệnh Select – mệnh đề Group by  Gom nhóm các dòng dữ liệu và tạo ra một dòng chung cho mỗi nhóm  Hiển thị các tổng phụ (subtotal) Vd1: Hiển thị tổng trị giá của tất cả các hóa đơn Select sum(soluong*dongia) From Chitiethoadon Vd2: Hiển thị tổng trị giá của từng hóa đơn Select Mahd, maSp, sum(soluong*dongia) As TongTg From Chitiethoadon Group By Mahd Lệnh Select – mệnh đề Group by MAÕ  MAÕ  SOÁ  ÑÔN  MAÕ  TONGTGÙ HÑ SP LÖÔÏNG GIAÙ HÑ 10148 3 20.00 2.20 10148 4 30.00 16.50 10148 803 10148 9 20.00 13.20 10150 2 22.00 44.00 10150 1133 10150 4 10.00 16.50 10156 68.75 10156 8 20.00 68.75 Select Mahd, sum(soluong*dongia) From Chitiethoadon Group By Mahd Lệnh Select – mệnh đề Group by  Chú ý : các cột xuất hiện trong mệnh đề Select phải có trong mệnh đề Group By, ngoại trừ các cột được tạo từ hàm thống kê.  Vd3: Select Manv, LoaiHD, cou ...

Tài liệu được xem nhiều: