Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 61 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
61
Dung lượng
673,96 KB
Nội dung
Chƣơng IV: Transact-SQL truy vấn liệu Nội dung chƣơng IV • Câu lệnh thao tác liệu – – – – Truy vấn liệu Truy vấn lồng Hàm kết hợp gom nhóm Một số dạng truy vấn khác • Khung nhìn Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT Cơ sở liệu ví dụ • Trong suốt phần sau chương này, ta sử dụng csdl sau làm ví dụ minh họa: – NhanVien(manv, honv, tenlot, tennv, ngaysinh, diachi, phai, luong, manql, phong) – PhongBan(maphong,tenphong,trphong, ngnhanchuc) – DDPhong(maphong, diadiem) – DeAn(tenda, mada, ddiemda, phong) – PhanCong(manvien, soda, thoigian) – ThanNhan(manvien, tentn, phai, ngaysinh, quanhe) Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT Truy vấn liệu • Là ngơn ngữ rút trích liệu – Thường kèm với số điều kiện • Dựa Phép toán ĐSQH Một số bổ sung – Cho phép kết trả bảng có nhiều dịng trùng Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT Truy vấn • Gồm mệnh đề SELECT [DISTINCT] FROM [WHERE] Từ khóa DISTINCT để loại bỏ dịng trùng bảng kết – : • Tên cột cần hiển thị kết truy vấn – • Tên bảng liên quan đến câu truy vấn – • • • Biểu thức boolean xác định dòng rút trích Nối biểu thức: AND, OR, NOT Phép toán: , , , , , , LIKE BETWEEN Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT Truy vấn (tt) • SQL ĐSQH SELECT FROM WHERE SELECT L L (C (R)) Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT FROM R WHERE C Truy vấn (tt) • Ví dụ: Cho biết ds sinh viên lớp có mã lớp „Ti01‟ SELECT * FROM SinhVien WHERE malop = ‘Ti01’ Dấu * để tất cột – Tương đương với biểu thức đsqh sau: malop = ‘Ti01’ (SinhVien) Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT Truy vấn (tt) • Ví dụ: Cho biết ds sinh viên nam lớp có mã „Ti01‟ SELECT masv, hoten, ngaysinh, phai, malop FROM SinhVien WHERE malop = ‘Ti01’ and phai = ‘Nam’ – Tương đương với biểu thức đsqh sau: masv, hoten, ngaysinh, phai, malop ‘Ti01’and phai=‘Nam’ (SinhVien)) Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT (malop = Truy vấn (tt) • Tên bí danh: – Có thể đặt lại tên cho ds thuộc tính bảng kết (gọi tên bí danh) cách sử dụng cú pháp sau: Select AS – Ví dụ SELECT masv AS ma, hoten AS ‘Ho ngaysinh, phai, malop FROM SinhVien WHERE malop = ‘Ti01’ and phai = ‘Nam’ Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT ten’, Truy vấn (tt) • Ví dụ: Cho biết mã số, họ tên, ngày sinh, tên lớp danh sách sinh viên lớp „công nghệ thông tin 01‟ SELECT maso, hoten, ngaysinh, tenlop FROM SinhVien, LopHoc WHERE tenlop = ‘Cong nghe thong tin 01’ AND SinhVien.malop = LopHoc.malop Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 10 Điều kiện kết mệnh đề FROM (tt) • Kết nối ngồi – Ví dụ: ta có bảng NhanVien DonVi sau: • Phép kết nối ngồi đầy đủ bảng cho kết sau: select * from NhanVien full join DonVi on NhanVien.madv = DonVi.madv Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 47 Điều kiện kết mệnh đề FROM (tt) • Ví dụ: – Tìm mã tên nhân viên làm việc phòng „Nghien cuu‟ – Cho biết họ tên nhân viên tên phòng ban mà họ trưởng phòng có Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 48 Điều kiện kết mệnh đề FROM (tt) • Ví dụ: – Tìm họ tên nhân viên tên đề án nhân viên tham gia có Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 49 Một số dạng câu truy vấn khác • SV tự tìm hiểu Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 50 Nội dung chƣơng IV • Câu lệnh thao tác liệu – – – – Truy vấn liệu Truy vấn lồng Hàm kết hợp gom nhóm Một số dạng truy vấn khác • Khung nhìn Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 51 Khung nhìn (View) • Bảng quan hệ tổ chức lưu trữ vật lý CSDL • Khung nhìn quan hệ – – – – Không lưu trữ vật lý (bảng ảo) Không chứa liệu Được định nghĩa từ bảng khác Có thể truy vấn hay cập nhật thơng qua khung nhìn Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 52 Khung nhìn (View) - Định nghĩa • Tạo khung nhìn – CREATE VIEW truy vấn> AS 2000 Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 54 Khung nhìn (View) - Cập nhật, bổ sung xóa liệu qua view • SV tự tìm hiểu Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 55 Một số dạng câu truy vấn khác • SV tự tìm hiểu Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 56 BÀI TẬP CHƢƠNG IV • Cho lược đồ csdl QLBanHang mô tả sau: Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 57 BÀI TẬP CHƢƠNG IV (tt) • Thực yêu cầu sau SQL – – – – – – – – Tạo csdl tạo bảng, nhập liệu cho bảng csdl Cho biết mã tên mặt hàng có giá lớn 10 số lượng có 20 Cho biết thông tin khách hàng mua mặt hàng áo Việt Tiến Cho biết thông tin mặt hàng chưa khách hàng đặt mua? Cho biết tổng số lượng bán mặt hàng Bổ sung ràng buộc cho bảng DONDATHANG rang buộc kiểm tra ngày giao hàng ngày chuyển hàng phải sau với ngày đặt hàng Cho biết thông tin khách hàng có ngày sinh Thống kê số lượng hóa đơn lập nhân viên Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 58 • Cho csdl sau: – – – – – – Tacgia(matg, hotentg, namsinh, quequan, madv) Donvi(madv, tendv, socb) Tapchi(matc, tentc, noixb) Chitiettc(macttc, matc, sora, sotrang) Baibao(mabb, tenbb, macttc, ngaydang) Tacgia_baibao(matg, mabb) • Cho biết ds báo đăng vào ngày 19/2/2009 • Cho biết ds chi tiết tạp chí tạp chí “Khoa học cơng nghệ” • Cho biết danh sách tác giả (matg, hoten, namsinh, tendv) tác giả báo có mã „bbcntt01‟ • Cho biết ds tác giả (matg, hoten) tác giả báo Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 59 • Cho csdl sau: – – – – – – Tacgia(matg, hotentg, namsinh, quequan, madv) Donvi(madv, tendv, socb) Tapchi(matc, tentc, noixb) Chitiettc(macttc, matc, sora, sotrang) Baibao(mabb, tenbb, macttc, ngaydang) Tacgia_baibao(matg, mabb) • Cho biết ds báo (mabb, tenbb, ngaydang, tentc, sora), tạp chí “khoa học cơng nghệ” số 4) • Cho biết ds tác giả (matg, hoten, quequan, tendv) có đăng tạp chí “Khoa học ứng dụng” Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 60 – NhanVien(manv, honv, tenlot, tennv, ngaysinh, diachi, phai, luong, manql, phong) – PhongBan(maphong,tenphong,trphong, ngnhanchuc) – DDPhong(maphong, diadiem) – DeAn(tenda, mada, ddiemda, phong) – PhanCong(manvien, soda, thoigian) – ThanNhan(manvien, tentn, phai, ngaysinh, quanhe) • Tìm nhân viên có lương lớn lương nhân viên phịng • Tìm nhân viên có lương lớn lương tất nhân viên phòng Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT 61 ... tác liệu – – – – Truy vấn liệu Truy vấn lồng Hàm kết hợp gom nhóm Một số dạng truy vấn khác • Khung nhìn Ths Lƣơng Thị Ngọc Khánh – Khoa CNTT – ĐH TĐT Cơ sở liệu ví dụ • Trong suốt phần sau chương. .. PHONG=MAPHONG Ths. Ths Lƣơng Th? ?Thị Ngọc Khoa CNTT – TĐT TUD – ĐH TĐT Lƣơng NgọcKhánh Khánh ––Khoa CNTT – ĐH 25 Truy vấn lồng (tt) - Ví dụ • Tìm nhân viên có người thân tên giới tính với nhân viên Ths. Ths... Th? ?Thị Ngọc Khoa CNTT – TĐT TUD – ĐH TĐT Lƣơng NgọcKhánh Khánh ––Khoa CNTT – ĐH 26 Truy vấn lồng (tt) - Ví dụ • Tìm nhân viên có lương lớn lương nhân viên phịng • Tìm nhân viên có lương lớn lương