Tổng quan về truy vấn dữ liệu, tạo lựa chọn truy vấn dữ liệu bằng SQL, Tạo các truy vấn dữ liệu bằng QBE,
Trang 2Bài 3: Truy vấn dữ liệu (Query)
• Tổng quan về truy vấn Tổng quan về truy vấn
• Tạo truy vấn lựa chọn dữ liệu bằng SQL
• Tạo các truy vấn dữ liệu bằng QBE
• Sử dụng tham số trong truy vấn
• Sử dụng tham số trong truy vấn
• Truy vấn con
Trang 3Bài 3: Truy vấn dữ liệu (Query)
• Tổng quan về truy vấn Tổng quan về truy vấn
• Tạo truy vấn lựa chọn dữ liệu bằng SQL
• Tạo các truy vấn dữ liệu bằng QBE
• Sử dụng tham số trong truy vấn
• Sử dụng tham số trong truy vấn
• Truy vấn con
Trang 4Tổng quan về truy vấn
• Giới thiệu về truy vấn
• Phân loại truy vấn
Trang 5Tổng quan về truy vấn
• Giới thiệu về truy vấn
−Công cụ cho phép xây dựng các câu lệnh thực hiện
các thao tác rút trích chọn lựa và cập nhật dữ liệu
các thao tác rút trích, chọn lựa và cập nhật dữ liệu
trong các bảng
−Truy vấn bằng QBE (Query By Example): Truy vấn bằng QBE (Query By Example):
• Xây dựng truy vấn bằng cách kéo thả
−
−
Trang 6Tổng quan về truy vấn
• Phân loại truy vấn
−Select Query - Truy vấn chọn dữ liệu
• Th hiệ út t í h à hiể thị thô ti ó thể l dữ liệ
• Thực hiện rút trích và hiển thị thông tin, có thể lọc dữ liệu theo yêu cầu
• Có 3 loại: Có 3 loại: Select Query, Sub Query Select Query, Sub Query và và Crosstab Query Crosstab Query
−Action Query - Truy vấn thao tác dữ liệu
• Thực hiện các yêu cầu về cập nhật dữ liệu (thêm xóa
• Thực hiện các yêu cầu về cập nhật dữ liệu (thêm, xóa, sửa dữ liệu) trong các bảng
• Có 3 loại: Append Query, Update Query và Delete Query
Trang 7Tổng quan về truy vấn
• Phân loại truy vấn
−Parameter Query - Truy vấn sử dụng tham số
• Th hiệ út t í h à hiể thị thô ti ó thể l dữ liệ
• Thực hiện rút trích và hiển thị thông tin, có thể lọc dữ liệu theo yêu cầu
• Có 1 loại: Có 1 loại: Parameter Query Parameter Query
−Make Table Query - Truy vấn tạo bảng
Trang 8Tổng quan về truy vấn
• Các loại truy vấn thường dùng
−Select Query:
• Th hiệ út t í h à hiể thị thô ti từ á ột t
• Thực hiện rút trích và hiển thị thông tin từ các cột trong bảng theo một yêu cầu nào đó
−Make Table Query:
• Rút trích dữ liệu từ một hoặc nhiều bảng theo một yêu cầu nào đó và xuất kết quả ra thành một bảng mới
• Bảng mới có cấu trúc và dữ liệu là những cột đã rút trích được từ các bảng khác
Trang 9Tổng quan về truy vấn
• Các loại truy vấn thường dùng
−Update Query:
• Th hiệ ử đổi dữ liệ t ê ột h ặ hiề dò
• Thực hiện sửa đổi dữ liệu trên một hoặc nhiều dòng trong bảng theo một điều kiện nào đó
−Append Query:
• Thực hiện thêm một hoặc nhiều dòng dữ liệu mới vào trong bảng
Trang 10Tổng quan về truy vấn
• Các loại truy vấn thường dùng
−Delete Query:
• Th hiệ ó ột h hiề dò dữ liệ t bả
• Thực hiện xóa một hay nhiều dòng dữ liệu torng bảng theo một điều kiện nào đó
−Crosstab Query:
• Tạo các truy vấn thống kê, tổng hợp dữ liệu theo từng dòng và từng cột
Trang 11Bài 4: Truy vấn dữ liệu (Query)
• Tổng quan về truy vấn Tổng quan về truy vấn
• Tạo truy vấn lựa chọn dữ liệu bằng SQL
• Tạo các truy vấn dữ liệu bằng QBE
• Sử dụng tham số trong truy vấn
• Sử dụng tham số trong truy vấn
• Truy vấn con
Trang 12Tạo truy vấn lựa chọn bằng SQL
• Các bước tạo truy vấn bằng SQL
• Tạo truy vấn từ một bảng dữ liệu
• Tạo truy vấn từ nhiều bảng dữ liệu
• Tạo truy vấn có điều kiện lọc dữ liệu
• Tạo truy vấn có điều kiện lọc dữ liệu
• Tạo truy vấn có sắp xếp dữ liệu
• Sử dụng các toán tử trong mệnh đề Where
Trang 13Các bước tạo truy vấn bằng SQL
• Bước 1: Tạo mới đối tượng Query
−Trong cửa sổ Database, chọn thẻ Queries và nhấn New
Trang 14Các bước tạo truy vấn bằng SQL
• Bước 1: Tạo mới đối tượng Query
−Trong cửa sổ New Query, chọn mục Design View và nhấn nút OK
Trang 15Các bước tạo truy vấn bằng SQL
• Bước 1: Tạo mới đối tượng Query
−Trong cửa sổ Show Table, nhấn nút Close để đóng lại
Trang 16Các bước tạo truy vấn bằng SQL
• Bước 2: Mở công cụ thiết kế truy vấn SQL
−Trong cửa sổ thiết kế Query, nhấn nút SQL trên thanh
Toolbar (hoặc chọn View Æ SQL View)
Trang 17Các bước tạo truy vấn bằng SQL
• Bước 2: Mở công cụ thiết kế truy vấn SQL
−Trong cửa sổ thiết kế Query, nhấn nút SQL trên thanh
Toolbar (hoặc chọn View Æ SQL View)
Trang 18Các bước tạo truy vấn bằng SQL
• Bước 3: Xây dựng câu lệnh truy vấn dữ liệu
−Trong cửa sổ lệnh SQL, viết câu lệnh truy vấn Select
Trang 19Tạo truy vấn từ một bảng dữ liệu
• Cú pháp:
SELECT [ Tính chất ] Biểu_thức 1 [ AS Tên_cột 1],
Biểu thức 2 [ AS Tên cột 2], …
FROM Tên_bảng
Trang 20Tạo truy vấn từ một bảng dữ liệu
• Lưu ý:
−Các Tính chất có thể sử dụng trong truy vấn
• Distinct: Loại bỏ các dòng dữ liệu trùng lắp
• Top N [Percent]: Lấy về N giá trị đầu tiên dựa trên dữ liệu, nếu
có thêm Percent sẽ lấy về N phần trăm mẩu tin
−Nếu chọn tất cả các cột có thể sử dụng dấu *
Trang 21Tạo truy vấn từ một bảng dữ liệu
• Ví dụ:
−Liệt kê danh sách các môn học
SELECT *
FROM MONHOC
−Liệt kê danh sách các sinh viên, thông tin gồm: MaSV,
HoSV, TenSV, Ngaysinh
Trang 22Tạo truy vấn từ một bảng dữ liệu
Minh họa
Trang 23Tạo truy vấn từ nhiều bảng dữ liệu
• Ví dụ 1:
−Liệt kê danh sách các sinh viên, thông tin gồm: MaSV,
HoSV, TenSV, Ngaysinh, Tenkhoa
SELECT MaSV, HoSV, TenSV, Ngaysinh, Tenkhoa FROM SINHVIEN INNER JOIN KHOA ON
SINHVIEN MAKH = KHOA MAKH
Trang 24Tạo truy vấn từ nhiều bảng dữ liệu
Trang 25Tạo truy vấn từ nhiều bảng dữ liệu
• Ví dụ 2:
−Liệt kê danh sách các sinh viên, thông tin gồm: HoSV,
TenSV, Ngaysinh, Tenmh, Diem
SELECT HoSV, TenSV, Ngaysinh, TenMH, Diem FROM ( SINHVIEN INNER JOIN KETQUA ON SINHVIEN MASV = KETQUA MASV ) INNER JOIN SINHVIEN.MASV = KETQUA.MASV ) INNER JOIN MONHOC ON KETQUA.MAMH = MONHOC.MAMH
Trang 26Tạo truy vấn từ nhiều bảng dữ liệu
• Lưu ý:
−Nếu lấy dữ liệu từ một cột có trong 2 bảng trở lên phải chỉ
ra tên bảng
−Ví dụ: Liệt kê danh sách các sinh viên, thông tin gồm:
MaSV, TenSV, Ngaysinh, Tenmh, Diem
SELECT SINHVIEN.MaSV , TenSV, Ngaysinh, TenMH, Diem FROM ( SINHVIEN INNER JOIN KETQUA ON
SINHVIEN MASV = KETQUA MASV ) INNER JOIN SINHVIEN.MASV = KETQUA.MASV ) INNER JOIN MONHOC ON KETQUA.MAMH = MONHOC.MAMH
Trang 27Tạo truy vấn từ nhiều bảng dữ liệu
Minh họa
Trang 28Tạo truy vấn có điều kiện lọc dữ liệu
3 [Bí danh 3] ON <Điều kiện nối>
WHERE <Điều kiện lọc dữ liệu>
Trang 29Tạo truy vấn có điều kiện lọc dữ liệu
Trang 30Tạo truy vấn có điều kiện lọc dữ liệu
Trang 31Tạo truy vấn có điều kiện lọc dữ liệu
• Ví dụ 2:
−Hãy liệt kê kết quả học tập của tất cả sinh viên thuộc khoa
Anh Văn Thông tin hiển thị bao gồm: Mã sinh viên Họ
Anh Văn, Thông tin hiển thị bao gồm: Mã sinh viên, Họ
sinh viên, Tên sinh viên, Tenmh, Diem
SELECT SV M SV H SV T SV T MH Di SELECT SV MaSV, HoSV, TenSV, TenMH, Diem FROM (SINHVIEN SV INNER JOIN KETQUA KQ
Trang 32Tạo truy vấn có điều kiện lọc dữ liệu
Minh họa
Trang 33Tạo truy vấn có sắp xếp dữ liệu
Trang 34Tạo truy vấn có sắp xếp dữ liệu
• Ví dụ 1:
−Hãy liệt kê kết quả học tập của tất cả sinh viên thuộc khoa
Anh Văn sắp theo thứ tự MaSV tăng dần và Diem giảm
Anh Văn, sắp theo thứ tự MaSV tăng dần và Diem giảm dần
SELECT SV M SV H SV T SV T MH Di SELECT SV MaSV, HoSV, TenSV, TenMH, Diem FROM (SINHVIEN SV INNER JOIN KETQUA KQ
ON SV MaSV = KQ MaSV ) INNER JOIN
ON SV MaSV KQ MaSV ) INNER JOIN MONHOC MH ON KQ MaMH = MH MaMH WHERE MaKH = “AV”
Trang 35Tạo truy vấn có sắp xếp dữ liệu
• Ví dụ 2: Sử dụng Top n kết hợp Order By
−Hãy liệt kê danh sách các sinh viên có học bổng cao nhất
SELECT Top 1 MaSV, HoSV, TenSV, Hocbong FROM SINHVIEN
ORDER BY Hocbong DESC
Trang 36Tạo truy vấn có sắp xếp dữ liệu
Minh họa
Trang 41Bài 4: Truy vấn dữ liệu (Query)
• Tổng quan về truy vấn Tổng quan về truy vấn
• Tạo truy vấn lựa chọn dữ liệu bằng SQL
• Tạo các truy vấn dữ liệu bằng QBE
• Sử dụng tham số trong truy vấn
• Sử dụng tham số trong truy vấn
• Truy vấn con
Trang 42Tạo các truy vấn dữ liệu bằng QBE
• Sử dụng QBE để tạo các loại truy vấn
• Thay đổi tính chất quan hệ giữa các bảng
trong truy vấn
trong truy vấn
Trang 43Màn hình làm việc QBE
• Hỗ trợ tạo nhanh các loại truy vấn thông qua
ố
một số bước thực hiện đơn giản
• Cho phép xem kết quả và hiệu chỉnh nội dung Cho phép xem kết quả và hiệu chỉnh nội dung của truy vấn một cách dễ dàng.
Trang 45Tạo mới truy vấn bằng QBE
• Bước 1: Tạo mới đối tượng Query
−Trong cửa sổ Database, chọn thẻ Queries và nhấn New
Trang 46Tạo mới truy vấn bằng QBE
• Bước 1: Tạo mới đối tượng Query
−Trong cửa sổ New Query, chọn mục Design View và nhấn nút OK
Trang 47Tạo mới truy vấn bằng QBE
• Bước 1: Tạo mới đối tượng Query
−Trong cửa sổ Show Table, chọn các bảng cần lấy dữ liệu
và nhấn nút Add để chọn, sau đó nhấn Close để đóng.
Trang 48Tạo mới truy vấn bằng QBE
• Bước 2: Thiết kế cấu trúc câu truy vấn
−Trong cửa sổ thiết kế Query, chọn các cột cần lấy dữ liệu trong vùng chứa bảng và kéo thả vào dòng Field
Trang 49Tạo mới truy vấn bằng QBE
• Bước 3: lưu lại cấu trúc câu truy vấn
−Chọn thực đơn File Æ Save để lưu lại truy vấn
−Đặt tên cho truy vấn vừa tạo
Trang 50Thực hiện truy vấn
• Nhấn nút Run trên thanh Toolbar
Trang 51Các chế độ hiển thị
• Các chế độ hiển thị khi thiết kế truy vấn
−Design View: hiển thị cấu trúc của câu truy vấn trong cửa
sổ QBE
Trang 52Các chế độ hiển thị
• Các chế độ hiển thị khi thiết kế truy vấn
−SQL View: hiển thị nội dung câu lệnh truy vấn trong cửa
sổ SQL
Trang 53Các chế độ hiển thị
• Các chế độ hiển thị khi thiết kế truy vấn
−Datasheet View: hiển thị dữ liệu theo nội dung của câu truy vấn
Trang 54Sử dụng QBE để tạo các truy vấn
• Truy vấn lựa chọn (Select Query)
• Truy vấn tạo bảng (Make Table Query)
ấ
• Truy vấn cập nhật dữ liệu (Update Query)
• Truy vấn thêm dữ liệu (Append Query) uy ấ t ê dữ ệu ( ppe d Que y)
• Truy vấn xóa dữ liệu (Delete Query)
• Truy vấn chéo (Crosstab Query)
Trang 55Select Query
• Thực hiện rút trích và hiển thị thông tin theo yêu
ầ
cầu
Trang 56Select Query
• Bước 1: Trong cửa sổ Database, chọn thẻ
ấ Queries và nhấn chọn New
Trang 57Select Query
• Bước 2: Trong cửa sổ New Query, chọn mục
ấ Design View và nhấn nút OK
Trang 61Select Query
• Cách đặt tên (Alias) cho các cột tính toán
−Trong truy vấn có thể tạo ra các cột tính toán từ các cột
dữ liệu trong bảng
−Để đặt lại tên cho cột sử dụng dấu “ : ”
−Nếu không đặt tên mới cho các cột tính toán thì mặc định Nếu không đặt tên mới cho các cột tính toán thì mặc định cột đó sẽ được đặt tên là Expr1
Trang 62Select Query
• Ví dụ:
−Liệt kê danh sách các sinh viên, thông tin gồm: Mã sinh viên, Họ tên sinh viên, Tên khoa
Trang 63Select Query
• Sử dụng các hàm cơ bản cho cột tính toán
−Left: Trích một số ký tự bên trái của chuỗi
Left(<Tên field hoặc chuỗi ký tự>, <số ký tự cần trích>)
−Right: Trích một số ký tự bên phải của chuỗi
Right(<Tên field hoặc chuỗi ký tự> <số ký tự cần trích>)
−Mid: Trích một số ký tự tại vị trí bất kỳ trong chuỗi
Trang 64Select Query
• Ví dụ:
−Liệt kê danh sách các sinh viên có tên bắt đầu bằng chữ
“ T ”, thông tin gồm: Mã sinh viên, Họ tên sinh viên, Tên
khoa
Trang 65Select Query
• Ví dụ:
−Liệt kê danh sách các sinh viên có ký tự thứ 2 của phần tên là “ H ”, thông tin gồm: Mã sinh viên, Họ tên sinh viên, Tên khoa
Trang 66Select Query
• Sử dụng các hàm cơ bản cho cột tính toán
−Date: Trả về ngày hiện hành của hệ thống
Date()
−Year: Trả về giá trị năm của biểu thức ngày
Year(<Tên field hoặc biểu thức ngày>)
−Month: Trả về giá trị tháng của biểu thức ngày
ể Month(<Tên field hoặc biểu thức ngày>)
−Day: Trả về giá trị ngày của biểu thức ngày
Trang 67Select Query
• Ví dụ:
−Liệt kê danh sách các sinh viên có ngày sinh trong tháng
4 , thông tin gồm: Mã sinh viên, Họ tên sinh viên, Tên khoa
Trang 68Select Query
• Ví dụ (cách 2):
−Liệt kê danh sách các sinh viên có ngày sinh trong tháng
4 , thông tin gồm: Mã sinh viên, Họ tên sinh viên, Tên khoa
Trang 69Select Query
• Lưu ý: Khi sử dụng các hàm thì tên field phải
ấ được đặt trong cặp dấu “[ ]”
Trang 70Select Query
• Sử dụng các hàm cơ bản cho cột tính toán
−IIF: So sánh điều kiện và trả về TRUE hoặc FALSE
IIF(<điều kiện so sánh>, <Giá trị 1>, <Giá trị 2>)
−Toán tử &: Nối hai chuỗi ký tự lại với nhau
<Tên field hoặc chuỗi ký tự 1> & < Tên field hoặc chuỗi ký tự 2>
Trang 71Select Query
• Ví dụ :
−Liệt kê danh sách các sinh viên, thông tin gồm: Mã sinh viên, Họ tên sinh viên, Tên khoa, Giới tính
Trang 72Select Query
• Sử dụng Total trong Select Query
−Cho phép tạo ra các truy vấn nhóm, thực hiện các tính
toán, thống kê trên dữ liệu
−Để mở chức năng Total, chọn thực đơn View Æ Total
hoặc nhấn nút Total trên thanh Toolbar
Trang 73Select Query
• Sử dụng Total trong Select Query
−Các phép toán thường dùng trong dòng Total:
• Sum: Tính tổng cộng Sum: Tính tổng cộng
• Avg: Tính giá trị trung bình
• Min: Tìm giá trị nhỏ nhất Min: Tìm giá trị nhỏ nhất
• Max: Tìm giá trị lớn nhất
•
Trang 74Select Query
• Ví dụ 1:
−Cho biết học bổng nhỏ nhất của từng khoa gồm: Mã khoa, Học bổng nhỏ nhất
Trang 75Select Query
• Ví dụ 1:
−Cho biết học bổng nhỏ nhất của từng khoa gồm: Mã khoa, Học bổng nhỏ nhất
Trang 76Select Query
• Ví dụ 2:
−Cho biết tổng số sinh viên của từng khoa gồm: Mã khoa, Tên khoa, Tổng số sinh viên
Trang 77• Nhập giá trị 1 vào ô Top
Values trên thanh
Toolbar
Trang 78Select Query
• Ví dụ 4: Kết hợp Sum và IIF
−Thống kê tổng số sinh viên nam và tổng số sinh viên nữ theo từng khoa
Trang 79Select Query
Minh họa
Trang 80Make Table Query
• Sao chép cấu trúc và dữ liệu từ một hoặc nhiều bảng sang một bảng mới
Trang 81Make Table Query
• Bước 1: Thực hiện lần lượt từng bước như tạo
ấ truy vấn chọn lựa (Select Query)
Trang 82Make Table Query
• Bước 2: Trong cửa sổ thiết kế truy vấn, chọn
thực đơn Query Æ Make Table Query và nhập
Tên bảng cần tạo
Trang 83Make Table Query
• Bước 3: Lưu lại cấu trúc câu lệnh truy vấn và
nhấn nút Run để thực hiện truy vấn
Trang 84Make Table Query
Minh họa
Trang 85Update Query
• Thay đổi dữ liệu trên một hoặc nhiều cột trên
ề
một hoặc nhiều dòng khác nhau trong bảng
• Dữ liệu cập nhật có thể do người dùng nhập vào Dữ liệu cập nhật có thể do người dùng nhập vào hoặc lấy từ những bảng khác
Trang 86Update Query
• Bước 1: Trong cửa sổ Database, chọn thẻ
ấ Queries và nhấn chọn New
Trang 87Update Query
• Bước 2: Trong cửa sổ New Query, chọn mục
ấ Design View và nhấn nút OK
Trang 88Update Query
• Bước 3: Trong cửa sổ Show Table, chọn các
ầ bảng cần cập nhật dữ liệu và các bảng có liên quan.
Trang 89Update Query
• Bước 4: Trong cửa sổ thiết kế Query, chọn thực đơn Query Æ Update Query (lúc này trên vùng thiết kế có thêm dòng Update To)
Trang 90Update Query
• Bước 5: Trong cửa sổ thiết kế Query, chọn các
ầ cột cần cập nhật trong vùng chứa bảng và kéo thả vào dòng Field
Trang 94Update Query
• Ví dụ 1:
−Cập nhật điểm thi của môn Truyền Tin (MaMH = “01”) cho những sinh viên khoa Anh văn (MaKH = “AV”) thành 5
Trang 95Update Query
• Ví dụ 2:
−Tăng điểm thi cho những sinh viên khoa Tin học (MaKH =
“TH”) lên 2 điểm, trong đó điểm thi lớn nhất là 10
Trang 96Update Query
Minh họa
Trang 97Append Query
• Thêm một hay nhiều dòng dữ liệu mới vào bảng
• Dòng dữ liệu mới thêm phải thỏa các yêu cầu
kiểm tra nhập liệu
Trang 98Append Query
• Bước 1: Trong cửa sổ Database, chọn thẻ
ấ Queries và nhấn chọn New
Trang 99Append Query
• Bước 2: Trong cửa sổ New Query, chọn mục
ấ Design View và nhấn nút OK
Trang 100Append Query
• Bước 3: Trong cửa sổ Show Table, nhấn nút
ể close để đóng lại.
Trang 101Append Query
• Bước 4: Trong cửa sổ thiết kế Query, chọn thực
ầ đơn Query Æ Append Query và chọn bảng cần thêm dữ liệu
Trang 102Append Query
• Bước 5: Trong cửa sổ thiết kế Query, nhập các
ầ giá trị cần thêm vào dòng Field và chọn tên cột cần thêm trong dòng Append To
Trang 104Append Query
• Lưu ý: nếu cột nào chỉ dùng để làm điều kiện so
ể ố sánh thì dòng Append To phải để trống
Trang 106Append Query
• Ví dụ 2:
−Thêm vào bảng KETQUA danh sách các sinh viên khoa
AV, mã môn học là "03" và điểm 0
Trang 107Append Query
Minh họa
Trang 108Delete Query
• Xóa một hay nhiều dòng dữ liệu trong bảng
• Dữ liệu sau khi xóa sẽ không thể phục hồi
Trang 109Delete Query
• Bước 1: Trong cửa sổ Database, chọn thẻ
ấ Queries và nhấn chọn New