Bài giảng cơ sở dữ liệu chương 3 ngôn ngữ truy vấn SQL

43 512 1
Bài giảng cơ sở dữ liệu   chương 3  ngôn ngữ truy vấn SQL

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CƠ SỞ DỮ LIỆU ( Databases ) Chương 3: Ngôn ngữ truy vấn SQL bangtqh@utc2.edu.vn Nội dung Khái quát ngôn ngữ truy vấn liệu Câu lệnh SELECT Các hàm thao tác liệu Truy vấn thông tin từ nhiều bảng Các lệnh cập nhật liệu Các lệnh liên quan tới cấu trúc Các lệnh giao quyền truy cập CSDL Bài tập bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 3.1 Giới thiệu SQL SQL xem yếu tố đóng góp vào thành công CSDL quan hệ áp dụng thực tế Là ngôn ngữ mức cao, người dùng cần xác định kết truy vấn gì, phần lại tính toán tối ưu hoá câu lệnh DBMS đảm nhiệm 1970: SQL (Structured Query Language) bắt nguồn từ ngôn ngữ SEQUEL (Structured English QUEry Language), ngôn ngữ thiết kế tập đoàn IBM nhằm đưa hệ quản trị CSDL có tên SYSTEM-R bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 3.1 Giới thiệu SQL (tt) Năm 1976: SEQUEL cải tiến thành SEQUEL2 Năm 1978-1979: SEQUEL2 nâng cấp đổi tên thành SQL (nhưng đọc SEQUEL) Chuẩn SQL có tên gọi SQL-86 (SQL1) công nhận chuẩn hóa ANSI ISO Năm 1992: SQL1 mở rộng với nhiều tính gọi SQL-92 (SQL2) Năm 1999: Chuẩn SQL-99 (SQL3) đời Phiên SQL-2011 bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 3.1 Giới thiệu SQL (tt) Ngôn ngữ giao thiết CSLD gồm: – – – – DDL – Data Definition Language DML – Data Manipulation Language SQL – Structured Query Language DCL – Data Control Language SQL gồm nhóm lệnh – DDL: Tạo cấu trúc CSDL – DML: Thao tác CDSDL • CREATE • SELECT • INSERT, UPDATE, DELETE… bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL Lược đồ CSDL sử dụng NHANVIEN (MANV,HONV, TENLOT, TENNV, PHAI, LUONG, DIACHI, NGAYSINH, MA_NQL, PHG) PHONGBAN (MAPB, TENPB, TRPHG, NGAYBĐ) DIADIEM_PHG (MAPB, DIADIEM) DEAN (MADA, TENDA, NGAYBD, PHONG, DIADIEM_DA) PHANCONG (MANV, MADA, THOIGIAN) THANNHAN (MANV,TENTN,PHAI,NGAYSINH,QUANHE) bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 3.2 lệnh SELECT – Truy vấn liệu Gồm mệnh đề SELECT FROM WHERE – • Tên cột cần hiển thị kết truy vấn – • Tên bảng (nguồn) liệu truy vấn – • Xác định biểu thức boolean xác định dòng (bộ) trích • Nối biểu thức: AND, OR, NOT • Phép toán: >, =2000000 AND LUONG[...]... bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 39 3. 4 Truy vấn từ nhiều bảng (tt) Ví dụ: Tìm họ tên nhân viên và tên thân nhân của họ (nếu có) SELECT NV.MaNV, HoNV, TenLot, TenNV, TenTN, Quanhe FROM ThanNhan TN RIGHT JOIN NhanVien NV ON TN.MaNV = NV.MaNV bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 40 3. 4 Truy vấn từ nhiều bảng (tt) Truy vấn lồng nhau – Một câu truy vấn (SELECT) lồng vào câu truy vấn. .. bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 62 3. 5 .3 Xóa dòng trong bảng Cú pháp DELETE FROM WHERE Ví dụ: bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 63 3.5 .3 Xóa dòng trong bảng (tt) Ví dụ: Xóa đi những nhân viên làm ở phòng ‘Dự án’ DELETE FROM NHANVIEN WHERE PHG IN ( SELECT MaPB FROM PHONGBAN WHERE TenPB = ‘Phòng Dự án’ ) bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL. .. (True/False) bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 69 3. 6.1 Lệnh tạo bảng CREATE TABLE Để định nghĩa 1 bảng cần chỉ ra: – Tên bảng – Các thuộc tính • Tên thuộc tính • Kiểu dữ liệu • RBTV trên thuộc tính Cú pháp bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 70 3. 6.1 CREATE TABLE (tt) Ví dụ: bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 71 3. 6.1 CREATE TABLE (tt) RBTV – –... ) Truy vấn con bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 42 Truy vấn lồng nhau (tt) Các phép toán tập hợp – – – – – – IN NOT IN ALL ANY / SOME EXISTS NOT EXISTS bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 43 Truy vấn lồng nhau (tt) Có 2 loại truy vấn lồng – Lồng phân cấp: • Mệnh đề WHERE của Subquery không tham chiếu đến các thuộc tính của các bảng trong mệnh đề FROM của truy vấn. .. bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 56 3. 5 Các lệnh cập nhật dữ liệu Thêm 1 bộ (dòng) mới Sửa 1 bộ (dòng) Xóa 1 bộ (dòng) Tạo mới 1 quan hệ (bảng) với nội dung từ CSDL bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL 57 3. 5.1 Thêm dòng vào bảng Cú pháp INSERT INTO ( ) VALUES () Ví dụ: bangtqh@utc2.edu.vn Chương 3 - Ngôn ngữ truy vấn SQL. .. SQL 28 Mệnh đề HAVING Ví dụ: Hãy tìm những nhân viên tham gia từ 2 đề án trở lên MaNV So DA Tong TG 999888777 10 32 .5 999888777 30 10 888777666 10 10 888777666 30 10 33 3222111 10 35 .7 33 3222111 20 25 33 3222111 30 5 55544 433 3 30 15 bangtqh@utc2.edu.vn Bị loại ra Chương 3 - Ngôn ngữ truy vấn SQL 29 Mệnh đề HAVING (tt) Được sử dụng khi cần lọc ra những nhóm thỏa mãn điều kiện nào đó Cú pháp: SELECT ... bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 80 3.6.3 Xóa bảng Cú pháp: Ví dụ: bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 81 3.6.3 Xóa bảng (tt) bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL. .. bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 72 3.6.1 CREATE TABLE (tt) Ví dụ RBTV bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 73 3.6.1 CREATE TABLE (tt) Ví dụ: bangtqh@utc2.edu.vn Chương - Ngôn ngữ. .. 3.7 Lệnh giao quyền truy cập CSDL (Đọc tài liệu) bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 83 bangtqh@utc2.edu.vn Chương - Ngôn ngữ truy vấn SQL 84 3.8 Bài tập (Tài liệu, trang 59 – 62)

Ngày đăng: 01/04/2016, 08:26

Tài liệu cùng người dùng

Tài liệu liên quan