SlideShare a Scribd company logo
1 of 68
Download to read offline
Đại Học Sư Phạm Tp. Hồ Chí Minh
Khoa Toán – Tin Học
TRUY VẤN DỮ LIỆUTRUY VẤN DỮ LIỆU
Ố Ó ẤTỐI ƯU HÓA TRUY VẤN
Trần Ngọc Bảo
Email: tnbao.dhsp@gmail.com
Đại Học Sư Phạm Tp. Hồ Chí Minh
Khoa Toán – Tin Học
TỐI ƯU HÓATỐI ƯU HÓA
TRUY VẤNTRUY VẤNTRUY VẤNTRUY VẤN
• Giới thiệu về tối ưu hóa truy vấn
• Các qui tắc biến đổi tương đương
• Giải thuật Heuristic cho tối ưu hóa truy vấn
Đại Học Sư Phạm Tp. Hồ Chí Minh
Khoa Toán – Tin Học
TỐI ƯU HÓATỐI ƯU HÓA
TRUY VẤNTRUY VẤNTRUY VẤNTRUY VẤN
• Giới thiệu về tối ưu hóa truy vấn
• Các qui tắc biến đổi tương đương
• Giải thuật Heuristic cho tối ưu hóa truy vấn
UU
DLDL
Phò iá t i ột t ờ Đ i h ố ti h hó iệ ả lý đă ký
Giới thiệu về tối ưu hóa truy vấn
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Phòng giáo vụ tại một trường Đại học muốn tin học hóa việc quản lý đăng ký
học chuyên đề của sinh viên. Kết quả phân tích thiết kế được mô hình CSDL
quan hệ như sau:
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
2. NGANH (MANGANH, TENNGANH, SOCD, TSSV)
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
3. CHUYENDE (MACD, TENCD, SOSVTD)
2. NGANH (MANGANH, TENNGANH, SOCD, TSSV)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
4. CD_NGANH (MACD, MANGANH)
5. CD_MO(MACD, NAM, HOCKY)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
6. DANGKY(MASV, MACD, NAM, HOCKY)
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (44))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (44))44
UU
DLDL Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (55))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (55))55
Lược đồ CSDL ứng dụng quản lý chuyên đề
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
1 SINHVIEN (MASV HOTEN PHAI NGAYSINH MANGANH)
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
MASV HOTEN PHAI NGAYSINH MANGANH
29 0 00 C h 0/ 0/ 9 9 S 0
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101
K29 103 001 Han Quoc Viet Nam 3/2/1979 SP103
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103
K29.201.001 Ly Thanh Nam 3/8/1979 SP201
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201
K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (66))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (66))66
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
ầ ấ
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
2 NGANH (MANGANH TENNGANH SOCD TSSV)
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MANGANH TENNGANH SOCD TSSV
SP103 Sư Phạm Tin học 8 800
2. NGANH (MANGANH, TENNGANH, SOCD, TSSV)
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
SP103 Sư Phạm Tin học 8 800
SP101 Sư Phạm Toán 5 1000
SP201 Sư Phạm Hóa 3 1500
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
SP201 Sư Phạm Hóa 3 1500
SP102 Sư Phạm Lý 4 1200
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
CNTT Khoa học máy tính 8 160
SP104 Sư Phạm Lý 6 1000
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (77))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (77))77
SP105 Sư phạm Anh 2 1100
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103
SP103 Sư Phạm Tin học 8 800
SP101 Sư Phạm Toán 5 1000
SP201 Sư Phạm Hóa 3 1500
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103
K29.201.001 Ly Thanh Nam 3/8/1979 SP201
SP102 Sư Phạm Lý 4 1200
CNTT Khoa học máy tính 8 160
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201
K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104
SP104 Sư Phạm Lý 6 1000
SP105 Sư phạm Anh 2 1100
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
MASV HOTEN NGAYSINH
K29.103.001 Han Quoc Viet 3/2/1979
Kết quả truy vấn: 1 dòng
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (88))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (88))88
K29.103.001 Han Quoc Viet 3/2/1979
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
1. Cách 1:
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM SINHVIEN SV, NGANH N
WHERE SV.MANGANH = N.MANGANH AND PHAI = ‘NAM’ AND
TENNGANH ‘S h Ti h ’
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
2. Cách 2:
TENNGANH = ‘Sư phạm Tin học’
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
SELECT MASV, HOTEN, NGAYSINH
FROM SINHVIEN SV JOIN NGANH N ON SV.MANGANH =
N.MANGANH
WHERE PHAI = ‘NAM’ AND TENNGANH = ‘Sư phạm Tin học’
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
WHERE PHAI = NAM AND TENNGANH = Sư phạm Tin học
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (99))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (99))99
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
Yêu cầu truy vấn: Liệt kê danh sách (MaSV HoTen NgaySinh) sinh viên
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
3. Cách 3:
SELECT MASV HOTEN NGAYSINH
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM
(SELECT MASV,TENSV, NGAYSINH, MANGANH
FROM SINHVIEN
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
WHERE PHAI = ‘NAM’) AS SV JOIN
(SELECT MANGANH
FROM NGANH
WHERE TENNGANH = ‘Sư phạm Tin học’) AS N
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
WHERE TENNGANH = Sư phạm Tin học ) AS N
ON SV.MANGANH = N.MANGANH
ễ ễễ ễ
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
Trong 3 cách biểu diễn như trên cách nào biểu diễn nàoTrong 3 cách biểu diễn như trên cách nào biểu diễn nào
chạy chậm nhất (xấu nhất) ?, cách biểu diễn nào chạychạy chậm nhất (xấu nhất) ?, cách biểu diễn nào chạy
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1010))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1010))1010
nhanh nhất (tối ưu nhất) ?nhanh nhất (tối ưu nhất) ?
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
Yêu cầu truy vấn: Liệt kê danh sách (MaSV HoTen NgaySinh) sinh viên
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
1. Cách 1:
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM SINHVIEN SV, NGANH N
WHERE SV.MANGANH = N.MANGANH AND PHAI = ‘NAM’ AND
TENNGANH ‘S h Ti h ’
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
TENNGANH = ‘Sư phạm Tin học’
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1111))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1111))1111
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MASV HOTEN PHAI NGAYSINH MANGANH
K29 101 001 N C Ph N 10/10/1979 SP101
g g
MANGANH TENNGANH SOCD TSSV
SP103 Sư Phạm Tin học 8 800
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103
SP101 Sư Phạm Toán 5 1000
SP201 Sư Phạm Hóa 3 1500
SP102 Sư Phạm Lý 4 1200
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103
K29.201.001 Ly Thanh Nam 3/8/1979 SP201
K29 201 002 Tran Ngoc Dung Nu 4/5/1979 SP201
ạ ý
CNTT Khoa học máy tính 8 160
SP104 Sư Phạm Lý 6 1000
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201
K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104
SP105 Sư phạm Anh 2 1100
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1212))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1212))1212
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP103 Sư Phạm Tin
học
8 800
g g
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP101 Sư Phạm Toán 5 1000
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP201 Sư Phạm Hóa 3 1500
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP102 Sư Phạm Lý 4 1200
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 CNTT Khoa học máy
tính
8 160
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP104 Sư Phạm Lý 6 1000
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP105 Sư phạm Anh 2 1100
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP103 Sư Phạm Tin
học
8 800
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP101 Sư Phạm Toán 5 1000
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP201 Sư Phạm Hóa 3 1500
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1313))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1313))1313
…..
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin
học
8 800
g g
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP101 Sư Phạm Toán 5 1000
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP201 Sư Phạm Hóa 3 1500
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP102 Sư Phạm Lý 4 1200
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 CNTT Khoa học máy
tính
8 160
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP104 Sư Phạm Lý 6 1000
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP105 Sư phạm Anh 2 1100
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP103 Sư Phạm Tin
học
8 800
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP101 Sư Phạm Toán 5 1000
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP201 Sư Phạm Hóa 3 1500
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1414))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1414))1414
…..
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV
g g
Kết quả truy vấn: 1 dòng
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin
học
8 800
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP101 Sư Phạm Toán 5 1000
i / / h ó
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP201 Sư Phạm Hóa 3 1500
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP102 Sư Phạm Lý 4 1200
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 CNTT Khoa học máy
tính
8 160
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP104 Sư Phạm Lý 6 1000
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP105 Sư phạm Anh 2 1100
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP103 Sư Phạm Tin
học
8 800
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1515))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1515))1515
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
ầ ấ
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
2. Cách 2:
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
2. Cách 2:
SELECT MASV, HOTEN, NGAYSINH
FROM SINHVIEN SV JOIN NGANH N ON SV.MANGANH =
N MANGANH
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
N.MANGANH
WHERE PHAI = ‘NAM’ AND TENNGANH = ‘Sư phạm Tin học’
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1616))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1616))1616
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
2. Cách 2: SinhVien Nganh 7 x 1 = 7 dòng
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MASV HOTEN PHAI NGAYSINH MANGANH
K29 101 001 N C Ph N 10/10/1979 SP101
g g
MANGANH TENNGANH SOCD TSSV
SP103 Sư Phạm Tin học 8 800
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103
SP103 Sư Phạm Tin học 8 800
SP101 Sư Phạm Toán 5 1000
SP201 Sư Phạm Hóa 3 1500
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103
K29.201.001 Ly Thanh Nam 3/8/1979 SP201
K29 201 002 Tran Ngoc Dung Nu 4/5/1979 SP201
SP102 Sư Phạm Lý 4 1200
CNTT Khoa học máy tính 8 160
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201
K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104
SP104 Sư Phạm Lý 6 1000
SP105 Sư phạm Anh 2 1100
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1717))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1717))1717
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
2. Cách 2: SinhVien Nganh 7 x 1 = 7 dòng
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MASV HOTEN PHAI NGAYSINH MANGANH
g g
MANGANH TENNGANH SOCD TSSV
SP103 Sư Phạm Tin học 8 800
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103
SP103 Sư Phạm Tin học 8 800
SP101 Sư Phạm Toán 5 1000
SP201 Sư Phạm Hóa 3 1500
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103
K29.201.001 Ly Thanh Nam 3/8/1979 SP201
SP102 Sư Phạm Lý 4 1200
CNTT Khoa học máy tính 8 160
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201
K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104
SP104 Sư Phạm Lý 6 1000
SP105 Sư phạm Anh 2 1100
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1818))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1818))1818
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
2. Cách 2: SinhVien Nganh 7 x 1 = 7 dòng
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV
Kết quả truy vấn: 1 dòng
g g
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin
học
8 800
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1919))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1919))1919
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
ầ ấ
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
3 Cách 3:
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
3. Cách 3:
SELECT MASV, HOTEN, NGAYSINH
FROM
(SELECT MASV,HOTEN, NGAYSINH, MANGANH
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
( , , ,
FROM SINHVIEN
WHERE PHAI = ‘NAM’) AS SV JOIN
(SELECT MANGANH
FROM NGANH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
FROM NGANH
WHERE TENNGANH = ‘Sư phạm Tin học’) AS N
ON SV.MANGANH = N.MANGANH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2020))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2020))2020
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
3. Cách 3: Bước 1
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
(SELECT MASV,HOTEN, NGAYSINH, MANGANH
FROM SINHVIEN
WHERE PHAI = ‘NAM’) AS SV JOIN
(SELECT MANGANH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
(SELECT MANGANH
FROM NGANH
WHERE TENNGANH = ‘Sư phạm Tin học’) AS N
ON SV.MANGANH = N.MANGANH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
Chọn các dòngChọn các dòng [MASV, HOTEN, NGAYSINH, MANGANH][MASV, HOTEN, NGAYSINH, MANGANH] có thuộccó thuộc
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2121))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2121))2121
tínhtính PHAI = ‘NAM’PHAI = ‘NAM’ trong quan hệtrong quan hệ SINHVIENSINHVIEN
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
3. Cách 3: Bước 1 (SELECT MASV TENSV NGAYSINH
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
(SELECT MASV,TENSV, NGAYSINH,
MANGANH FROM SINHVIEN
WHERE PHAI = ‘NAM’)
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
MASV HOTEN PHAI NGAYSINH MANGANH
K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101
K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101
MASV HOTEN NGAYSINH MANGANH
Kết quả truy vấn: 3 dòng
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103
K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103
K29.101.001 Nguyen Cong Phu 10/10/1979 SP101
K29.103.001 Han Quoc Viet 3/2/1979 SP103
K29.201.001 Ly Thanh 3/8/1979 SP201
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
K29.201.001 Ly Thanh Nam 3/8/1979 SP201
K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201
K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2222))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2222))2222
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
3. Cách 3: Bước 2
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM
(SELECT MASV HOTEN NGAYSINH MANGANH
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
(SELECT MASV,HOTEN, NGAYSINH, MANGANH
FROM SINHVIEN
WHERE PHAI = ‘NAM’) AS SV JOIN
(SELECT MANGANH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
FROM NGANH
WHERE TENNGANH = ‘Sư phạm Tin học’) AS N
ON SV.MANGANH = N.MANGANH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
Chọn các dòngChọn các dòng [MANGANH][MANGANH] có thuộc tính TENNGANHcó thuộc tính TENNGANH = ‘Sư phạm= ‘Sư phạm
Ti h ’Ti h ’ t hệt hệ NGANHNGANH
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2323))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2323))2323
Tin học’Tin học’ trong quan hệtrong quan hệ NGANHNGANH
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
3. Cách 3: Bước 2 (SELECT MANGANH
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MANGANH TENNGANH SOCD TSSV
FROM NGANH
WHERE TENNGANH = ‘Sư
phạm Tin học’)
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
MANGANH TENNGANH SOCD TSSV
SP103 Sư Phạm Tin học 8 800
SP101 Sư Phạm Toán 5 1000 MANGANH
Kết quả truy vấn: 1 dòng
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
SP201 Sư Phạm Hóa 3 1500
SP102 Sư Phạm Lý 4 1200
CNTT Khoa học máy tính 8 160
SP103
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
CNTT Khoa học máy tính 8 160
SP104 Sư Phạm Lý 6 1000
SP105 Sư phạm Anh 2 1100
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2424))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2424))2424
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
3. Cách 3: Bước 3
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
(SELECT MASV,HOTEN, NGAYSINH, MANGANH
FROM SINHVIEN
WHERE PHAI = ‘NAM’) AS SV JOIN
(SELECT MANGANH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
(SELECT MANGANH
FROM NGANH
WHERE TENNGANH = ‘Sư phạm Tin học’) AS N
ON SV.MANGANH = N.MANGANH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2525))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2525))2525
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
3. Cách 3: Bước 3 [Bước 1] AS SV JOIN
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
[Bước 1] AS SV JOIN
[Bước 2] AS N
ON SV.MANGANH = N.MANGANH
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
MANGANH
SP103
Kết quả truy vấn bước 2 (N)
MASV HOTEN NGAYSINH MANGANH
K29 101 001 Nguyen Cong Phu 10/10/1979 SP101
Kết quả truy vấn bước 1 (SV)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
SP103K29.101.001 Nguyen Cong Phu 10/10/1979 SP101
K29.103.001 Han Quoc Viet 3/2/1979 SP103
K29.201.001 Ly Thanh 3/8/1979 SP201
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
MASV HOTEN NGAYSINH MANGANH MANGANH
K29 103 001 H Q Vi t 3/2/1979 SP103 SP103
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2626))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2626))2626
K29.103.001 Han Quoc Viet 3/2/1979 SP103 SP103
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
3. Cách 3: Bước 4
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
(SELECT MASV,TENSV, NGAYSINH, MANGANH
FROM SINHVIEN
WHERE PHAI = ‘NAM’) AS SV JOIN
(SELECT MANGANH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
(SELECT MANGANH
FROM NGANH
WHERE TENNGANH = ‘Sư phạm Tin học’) AS N
ON SV.MANGANH = N.MANGANH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
Chiếu trên thuộc tínhChiếu trên thuộc tính [MASV HOTEN NGAYSINH][MASV HOTEN NGAYSINH] trong kết quả củatrong kết quả của
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2727))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2727))2727
Chiếu trên thuộc tínhChiếu trên thuộc tính [MASV, HOTEN, NGAYSINH][MASV, HOTEN, NGAYSINH] trong kết quả củatrong kết quả của
Bước 3Bước 3
UU
DLDL
ầ ấ
Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
3. Cách 3: Bước 4 SELECT MASV, HOTEN, NGAYSINH
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
Kết quả truy vấn bước 3
, ,
FROM [KQ BƯỚC 3]
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
MASV HOTEN NGAYSINH MANGANH MANGANH
K29.103.001 Han Quoc Viet 3/2/1979 SP103 SP103
ế quả uy ấ bước 3
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
MASV HOTEN NGAYSINH
K29.103.001 Han Quoc Viet 3/2/1979
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
Q
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2828))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2828))2828
UU
DLDL Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Trong 3 cách biểu diễn như trên cách nào biểu diễn nàoTrong 3 cách biểu diễn như trên cách nào biểu diễn nào
chạy chậm nhất (xấu nhất) ?, cách biểu diễn nào chạychạy chậm nhất (xấu nhất) ?, cách biểu diễn nào chạy
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
nhanh nhất (tối ưu nhất) ?nhanh nhất (tối ưu nhất) ?
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
1. Cách 1: Xấu nhất Đơn giản nhất
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
2. Cách 2: Thường sử dụng nhất Trung bình
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
3. Cách 3: Tốt nhất Phức tạp nhất
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2929))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2929))2929
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
1. Cách 1:
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM SINHVIEN SV NGANH N
Ngôn ngữ SQL
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
FROM SINHVIEN SV, NGANH N
WHERE SV.MANGANH = N.MANGANH AND PHAI = ‘NAM’ AND
TENNGANH = ‘Sư phạm Tin học’
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
Ngôn ngữ ĐSQL
∏ σ
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
∏MASV, HOTEN, NGAYSINH( σTENNGANH = ‘Sư phạm Tin học’’
∧ PHAI = ‘NAM’ ∧ SINHVIEN.MANGANH = NGANH.MANGANH
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3030))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3030))3030
(SINHVIEN x NGANH))
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
2. Cách 2:
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
Ngôn ngữ SQL
SELECT MASV, HOTEN, NGAYSINH
FROM SINHVIEN SV JOIN NGANH N ON SV MANGANH
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
FROM SINHVIEN SV JOIN NGANH N ON SV.MANGANH =
N.MANGANH
WHERE PHAI = ‘NAM’ AND TENNGANH = ‘Sư phạm Tin học’
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
Ngôn ngữ ĐSQL
∏
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
∏MASV, HOTEN, NGAYSINH( σTENNGANH = ‘Sư phạm Tin học’’
∧ PHAI = ‘NAM’ (SINHVIEN NGANH))
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3131))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3131))3131
SINHVIEN.MANGANH = NGANH.MANGANH
UU
DLDL Giới thiệu về tối ưu hóa truy vấn
Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
3. Cách 3:
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
N ô ữ SQL
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
Ngôn ngữ SQL
SELECT MASV, HOTEN, NGAYSINH
FROM
(SELECT MASV HOTEN NGAYSINH MANGANH FROM SINHVIEN
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
(SELECT MASV,HOTEN, NGAYSINH, MANGANH FROM SINHVIEN
WHERE PHAI = ‘NAM’) AS SV JOIN
(SELECT MANGANH
FROM NGANH
WHERE TENNGANH = ‘Sư phạm Tin học’) AS N
ON SV.MANGANH = N.MANGANH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
Ngôn ngữ ĐSQL
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
∏MASV, HOTEN, NGAYSINH((πMASV,HOTEN,NGAYSINH,MANGANH( σPHAI
(SINHVIEN))) (π (σ (NGANH))))
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3232))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3232))3232
= ‘NAM’(SINHVIEN))) (πMANGANH(σNGANH = ‘Sư phạm Tin học’ (NGANH))))
SINHVIEN.MANGANH = NGANH.MANGANH
UU
DLDL Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Tối ưu hóa truy vấn là một giải thuật HeuricticsTối ưu hóa truy vấn là một giải thuật Heurictics
tìm cách biểu diễn các truy vấn cho kết quảtìm cách biểu diễn các truy vấn cho kết quả
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
tìm cách biểu diễn các truy vấn cho kết quảtìm cách biểu diễn các truy vấn cho kết quả
nhanh nhất (tối ưu nhất) áp dụng một số qui tắcnhanh nhất (tối ưu nhất) áp dụng một số qui tắc
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
biến đổi tương đươngbiến đổi tương đương
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
1. Cách 1: Xấu nhất 3. Cách 3: Tốt nhất
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3333))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3333))3333
Đại Học Sư Phạm Tp. Hồ Chí Minh
Khoa Toán – Tin Học CƠ SỞ DỮ LIỆUCƠ SỞ DỮ LIỆU
TỐI ƯU HÓATỐI ƯU HÓA
TRUY VẤNTRUY VẤNTRUY VẤNTRUY VẤN
• Giới thiệu về tối ưu hóa truy vấn
• Các qui tắc biến đổi tương đương
• Giải thuật Heuristic cho tối ưu hóa truy vấn
UU
DLDL Các qui tắc biến đổi tương đương
1 Q i tắ 1 biế đổi dã á hé h
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
1. Qui tắc 1: biến đổi dãy các phép chọn
( ) ( )( )( )......2121 RR cncccnANDcANDc σσσσ ≡
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
Ví dụ
( ) ( )( )( )21...21 cncccnANDcANDc
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
ụ
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
σMANGANH = ‘SPS101’ AND PHAI = ‘NAM’ (SINHVIEN)
==
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
σMANGANH = ‘SPS101’(σPHAI = ‘NAM’ (SINHVIEN))
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3535))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3535))3535
UU
DLDL Các qui tắc biến đổi tương đương
2 Q i tắ 2 T
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
2. Qui tắc 2: Tính giao hoán của phép chọn
( )( ) ( )( )RR σσσσ ≡
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( )( ) ( )( )RR cccc 1221 σσσσ ≡
Ví dụ
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
ụ
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
σMANGANH = ‘SPS101’(σPHAI = ‘NAM’ (SINHVIEN))
=
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
σPHAI = ‘NAM’(σ MANGANH = ‘SPS01’ (SINHVIEN))
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3636))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3636))3636
UU
DLDL Các qui tắc biến đổi tương đương
3 Q i tắ 3 Biế ổ ế
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
3. Qui tắc 3: Biến đổi dãy các phép chiếu
( )( )( ) ( )RR ≡ππππ
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( )( )( ) ( )RR DSDSnDSDS ><><><>< ≡ 121 ...... ππππ
V
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
Ví dụ
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
πMASV, HOTEN (πMASV, HOTEN,PHAI, NGAYSINH (SINHVIEN))
=
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
πMASV, HOTEN (SINHVIEN))
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3737))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3737))3737
UU
DLDL Các qui tắc biến đổi tương đương
4 Q i tắ 4 T ế
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
4. Qui tắc 4: Tính giao hoán của phép chọn với phép chiếu
( )( ) ( )( )RR πσσπ ≡
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( )( ) ( )( )RR AnAAccAnAA ,...,2,1,...,2,1 πσσπ ≡
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
Ví dụ
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
πMASV, HOTEN, PHAI (σPHAI = ‘NAM’ (SINHVIEN))
=
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
σPHAI = ‘NAM’(πMASV, HOTEN (SINHVIEN))
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3838))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3838))3838
UU
DLDL Các qui tắc biến đổi tương đương
5 Q i tắ 5 T ế
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
5. Qui tắc 5: Tính giao hoán của phép tích, phép kết
( ) )( RSSR =
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( ) )( RSSR CC =
( )
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
( ) )( RxSSxR =Ví dụ
1 SINHVIEN (MASV HOTEN PHAI NGAYSINH MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
(SINHVIEN NGANH )
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
2. NGANH (MANGANH, TENNGANH)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
( )
=
(NGANH (SINHVIEN)
SINHVIEN.MANGANH = NGANH.MANGANH
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3939))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3939))
SINHVIEN.MANGANH = NGANH.MANGANH
UU
DLDL Các qui tắc biến đổi tương đương
6 Q i tắ 6
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
6. Qui tắc 6:
Nếu tất cả các thuộc tính trong c đều là thuộc tính của R, thì
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( ) S))((S RR cc σσ ≡
g
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
( ) ))(( cc
Ví dụ
1 SINHVIEN (MASV HOTEN PHAI NGAYSINH MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
σPHAI = ‘NAM’(SINHVIEN NGANH)
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
2. NGANH (MANGANH, TENNGANH)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
σPHAI = NAM (S G )
=
(σ )
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4040))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4040))
(σPHAI = ‘NAM’ (SINHVIEN)) NGANH
UU
DLDL Các qui tắc biến đổi tương đương
6 Q i tắ 6
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
6. Qui tắc 6:
Nếu c=c1 and c2, trong đó c1 là một thuộc tính của R, c2 là một thuộc tính
của S thì:
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( ) )(S)())((S 21 ccc RR σσσ ≡
của S, thì:
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
2
Ví dụ
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
σPHAI = ‘NAM’ AND TENNGANH = ‘SP TIN’(SINHVIEN NGANH)
2. NGANH (MANGANH, TENNGANH)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
σPHAI = NAM AND TENNGANH = SP TIN (S G )
=
(σ ) (σ )
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4141))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4141))
(σPHAI = ‘NAM’ (SINHVIEN)) (σTENNGANH = ‘SP TIN’ (NGANH))
UU
DLDL Các qui tắc biến đổi tương đương
6 Q i tắ 6
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
6. Qui tắc 6:
Nếu tất cả các thuộc tính trong c đều là thuộc tính của R, thì
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( ) Sx))((Sx RR cc σσ ≡
g
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
( ) ))(( cc
Ví dụ
1 SINHVIEN (MASV HOTEN PHAI NGAYSINH MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
σPHAI = ‘NAM’(SINHVIEN X NGANH)
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
2. NGANH (MANGANH, TENNGANH)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
σPHAI = NAM (S G )
=
(σ )
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4242))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4242))4242
(σPHAI = ‘NAM’ (SINHVIEN)) X NGANH
UU
DLDL Các qui tắc biến đổi tương đương
6 Q i tắ 6
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
6. Qui tắc 6:
Nếu c=c1 and c2, trong đó c1 là một thuộc tính của R, c2 là một thuộc tính
của S thì:
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( ) )(S)(x))((Sx 1 ccc RR σσσ ≡
của S, thì:
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
( ) )(S)(x))((Sx 21 ccc RR σσσ
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
σPHAI = ‘NAM’ AND TENNGANH = ‘SP TIN’(SINHVIEN X NGANH)
2. NGANH (MANGANH, TENNGANH)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
σPHAI = NAM AND TENNGANH = SP TIN (S G )
=
(σ ) (σ )
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4343))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4343))4343
(σPHAI = ‘NAM’ (SINHVIEN)) X (σTENNGANH = ‘SP TIN’ (NGANH))
UU
DLDL Các qui tắc biến đổi tương đương
7 Q i tắ 7
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
7. Qui tắc 7:
Giả sử L = {A1,…,AN,B1,…,BM}, trong đó A1,…,AN là
thuộc tính của R; B1 BM là thuộc tính của S
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( ) ))(())((S SRR ∏∏∏
thuộc tính của R; B1,…,BM là thuộc tính của S
Nếu điều kiện kết nối c chỉ chứa các thuộc tính trong L thì
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
( ) ))(())((S M321N321 ,...BB,B,BC,...AA,A,AC SRRL ∏∏≡∏
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
2 NGANH (MANGANH TENNGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
2. NGANH (MANGANH, TENNGANH)
πMASV,HOTEN,MANGANH,TENNGANH (SINHVIEN NGANH)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
= (πMASV,HOTEN,MANGANH (SINHVIEN))
SINHVIEN.MANGANH = NGANH.MANGANH
SINHVIEN MANGANH NGANH MANGANH
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4444))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4444))4444
(πTENNGANH,MANGANH ((NGANH))
SINHVIEN.MANGANH = NGANH.MANGANH
UU
DLDL Các qui tắc biến đổi tương đương
7 Q i tắ 7
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
7. Qui tắc 7:
Nếu điều kiện kết nối c có chứa các thuộc tính không ở trong L, giả sử là
AN 1 AN K của R và BM 1 BM P của S thì
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( ) ))(())((S SRR ∏∏∏ ≡
AN+1,… AN+K của R và BM+1,…,BM+P của S thì
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
( ) ))(())((S
PM2M1MM321KN2N1NN321 ...BBB,...BB,B,BC...AAA,,...AA,A,AC SRRL ∏∏∏ ++++++
≡
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
2 NGANH (MANGANH TENNGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
2. NGANH (MANGANH, TENNGANH)
πMASV,HOTEN,TENNGANH (SINHVIEN NGANH)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
= (πMASV,HOTEN,MANGANH (SINHVIEN))
SINHVIEN.MANGANH = NGANH.MANGANH
SINHVIEN MANGANH NGANH MANGANH
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4545))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4545))
(πTENNGANH,MANGANH ((NGANH))
SINHVIEN.MANGANH = NGANH.MANGANH
UU
DLDL Các qui tắc biến đổi tương đương
7 Q i tắ 7
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
7. Qui tắc 7:
Giả sử L = {A1,…,AN,B1,…,BM}, trong đó A1,…,AN là
thuộc tính của R; B1 BM là thuộc tính của S
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
( ) ))((x))((Sx M321N321 ,...BB,B,B,...AA,A,A SRRL ∏∏≡∏
thuộc tính của R; B1,…,BM là thuộc tính của S
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH)
2 NGANH (MANGANH TENNGANH)
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
2. NGANH (MANGANH, TENNGANH)
πMASV,HOTEN,MANGANH,TENNGANH (SINHVIEN X NGANH)
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
= (πMASV,HOTEN,MANGANH (SINHVIEN)) X
SINHVIEN.MANGANH = NGANH.MANGANH
SINHVIEN MANGANH NGANH MANGANH
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4646))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4646))4646
(πTENNGANH,MANGANH ((NGANH))
SINHVIEN.MANGANH = NGANH.MANGANH
UU
DLDL Các qui tắc biến đổi tương đương
8 Q i tắ 8 T
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
8. Qui tắc 8: Tính giao hoán của phép hội, giao
RSSRRSSR ∩≡∩∪≡∪
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
RSSRRSSR ∩≡∩∪≡∪ ,
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4747))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4747))4747
UU
DLDL Các qui tắc biến đổi tương đương
9 Q i tắ 9 T ế
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
9. Qui tắc 9: Tính kết hợp
T)(SRT)SR( θθθθ =
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
Trong đó là 1 trong các phép toán , X, ∩, ∪θ
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4848))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4848))4848
UU
DLDL Các qui tắc biến đổi tương đương
10 Qui tắc 10: Tính phân phối của phép chọn σ đối với các phép toán
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
10.Qui tắc 10: Tính phân phối của phép chọn σ đối với các phép toán
Giao (∩), Hội (∪), Trừ (-)
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
(S))((R))()SR( cc σθσθσ =c
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4949))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4949))4949
UU
DLDL Các qui tắc biến đổi tương đương
11 Qui tắc 11: Tí h hâ hối ủ hé hiế π đối ới á hé t á
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
11.Qui tắc 11: Tính phân phối của phép chiếu π đối với các phép toán
Giao (∩), Hội (∪), Trừ (-)
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
(S))((R))()SR( LL ∏∏=∏ θθL
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5050))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5050))5050
UU
DLDL Các qui tắc biến đổi tương đương
12 Q i tắ 12 ế ổ
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
12.Qui tắc 12: các biến đổi khác
Chuyển các phép (σ, ×) thành phép
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
Chuyển các phép (σ, ) thành phép
SR)SxR( c=cσ
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
Hoặc
cc
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
c ≡ NOT (c1 AND c2) ≡ NOT (c1) OR NOT (c2)
c ≡ NOT (c1 OR c2) ≡ NOT (c1) AND NOT (c2)
Hoặc
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5151))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5151))5151
Đại Học Sư Phạm Tp. Hồ Chí Minh
Khoa Toán – Tin Học
TỐI ƯU HÓATỐI ƯU HÓA
TRUY VẤNTRUY VẤNTRUY VẤNTRUY VẤN
• Giới thiệu về tối ưu hóa truy vấn
• Các qui tắc biến đổi tương đương
• Giải thuật Heuristic cho tối ưu hóa truy vấn
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
1 Dù i ắ 1 á h á hé h liê kiệ hà h 1 dã
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
1. Dùng qui tắc 1, tách các phép chọn liên kiện thành 1 dãy
các phép chọn.
2. Dùng qui tắc 2,4,6 và 10, liên quan đến tính giao hoán của
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
g q q g
phép chọn và các phép khác để di chuyển phép chọn
xuống nhánh của cây.
3 Dùng qui tắc 5 và 9 liên quan đến tính kết hợp của các
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
3. Dùng qui tắc 5 và 9, liên quan đến tính kết hợp của các
phép 2 ngôi để sắp xếp lại các nút lá của cây để các phép
chọn được ưu tiên thực hiện trước.
4 Dù i tắ 12 tổ h á tí h D t ới hé h
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
4. Dùng qui tắc 12, tổ hợp các tích Descartes với phép chọn
thành các phép kết.
5. Sử dụng các qui tắc 3, 4, 7 và 11 để tách và đẩy các phép
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
chiếu xuống các nhánh.
6. Nhận biết từng nhánh con biểu diễn cho một nhóm các
thao tác có thể được thi hành bằng một chiến lược thực
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5353))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5353))
thao tác có thể được thi hành bằng một chiến lược thực
hiện đơn.
UU
DLDL
Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê
Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
1. Cách 1:
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT MASV, HOTEN, NGAYSINH
FROM SINHVIEN SV NGANH N
Ngôn ngữ SQL
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
FROM SINHVIEN SV, NGANH N
WHERE SV.MANGANH = N.MANGANH AND PHAI = ‘NAM’ AND
TENNGANH = ‘Sư phạm Tin học’
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
Ngôn ngữ ĐSQH
∏ σ
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
∏MASV, HOTEN, NGAYSINH( σTENNGANH = ‘Sư phạm Tin học’’
∧ PHAI = ‘NAM’ ∧ SINHVIEN.MANGANH = NGANH.MANGANH
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5454))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5454))5454
(SINHVIEN x NGANH))
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQHSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
∏MASV, HOTEN, NGAYSINH( σTENNGANH = ‘Sư phạm Tin học’’
∧ PHAI ‘NAM’ ∧ SINHVIEN MANGANH NGANH MANGANH
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
∧ PHAI = ‘NAM’ ∧ SINHVIEN.MANGANH = NGANH.MANGANH
(SINHVIEN x NGANH))
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
MASV, HOTEN, NGAYSINH
TENNGANH = ‘Sư phạm Tin học’
Phép chọn
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
PHAI = ‘NAM’
SINHVIEN.MANGANH = NGANH.MANGANH
X
Phép chiếu
Quan hệ
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
NGANHSINHVIEN
Quan hệ
Phép tíchx
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5555))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5555))5555
Cây biểu diễn biểu thức truy vấnPhép kết
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
MASV HOTEN NGAYSINH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
MASV, HOTEN, NGAYSINH
TENNGANH = ‘Sư phạm Tin học’
MASV HOTEN NGAYSINH
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
PHAI = ‘NAM’
SINHVIEN.MANGANH
= NGANH.MANGANH
X
MASV, HOTEN, NGAYSINH
TENNGANH = ‘Sư phạm Tin học’
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NGANHSINHVIEN
PHAI = ‘NAM’
SINHVIEN.MANGANH = NGANH.MANGANH
X
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
Cây biểu diễn biểu thức truy vấn
X
TENNGANH = ‘Sư phạm Tin học’PHAI = ‘NAM’
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
NGANHSINHVIEN
TENNGANH Sư phạm Tin học
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5656))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5656))5656
Đưa phép chọn xuống sâu các nhánh
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
MASV HOTEN NGAYSINH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
MASV, HOTEN, NGAYSINH
SINHVIEN.MANGANH
Thay thế các phép tích Descartes
và phép chọn
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
= NGANH.MANGANH
X
và phép chọn
bằng phép kết
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
X
TENNGANH
= ‘Sư phạm Tin học’PHAI = ‘NAM’
MASV, HOTEN, NGAYSINH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
NGANHSINHVIEN
= Sư phạm Tin học
SINHVIEN.MANGANH
= NGANH.MANGANH
TENNGANH
PHAI = ‘NAM’
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
NGANHSINHVIEN
= ‘Sư phạm Tin học’PHAI = NAM
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5757))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5757))5757
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
Di chuyển các phép chiếu xuống các nhánh
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
MASV, HOTEN, NGAYSINH
SINHVIEN MANGANH
Di chuyển các phép chiếu xuống các nhánh
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SINHVIEN.MANGANH
= NGANH.MANGANH
TENNGANH
= ‘Sư phạm Tin học’PHAI = ‘NAM’
MASV, HOTEN, NGAYSINH
SINHVIEN.MANGANH
= NGANH.MANGANH
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NGANHSINHVIEN
= Sư phạm Tin học
MASV, HOTEN,
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
TENNGANH
PHAI = ‘NAM’
, ,
NGAYSINH MANGANH
MANGANH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
NGANHSINHVIEN
= ‘Sư phạm Tin học’PHAI = NAM
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5858))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5858))5858
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
MASV, HOTEN, NGAYSINH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
SINHVIEN.MANGANH
= NGANH.MANGANH
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
Chuyển cây truy vấn
sang biểu thức ĐSQH
MASV, HOTEN,
NGAYSINH MANGANH
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
TENNGANH
= ‘Sư phạm Tin học’PHAI = ‘NAM’
MANGANH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
NGANHSINHVIEN
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
∏MASV, HOTEN, NGAYSINH((πMASV,HOTEN,NGAYSINH,MANGANH( σPHAI
(SINHVIEN))) (π (σ (NGANH))))
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5959))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5959))
= ‘NAM’(SINHVIEN))) (πMANGANH(σNGANH = ‘Sư phạm Tin học’ (NGANH))))
SINHVIEN.MANGANH = NGANH.MANGANH
UU
DLDL
Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê
Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên
Nam thuộc ngành “Sư phạm Tin học”
Ngôn ngữ ĐSQH
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
g g
∏MASV, HOTEN, NGAYSINH((πMASV,HOTEN,NGAYSINH,MANGANH( σPHAI
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
= ‘NAM’(SINHVIEN))) (πMANGANH(σNGANH = ‘Sư phạm Tin học’ (NGANH))))
SINHVIEN.MANGANH = NGANH.MANGANH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
Ngôn ngữ SQL
SELECT MASV, HOTEN, NGAYSINH
FROM
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
FROM
(SELECT MASV,HOTEN, NGAYSINH, MANGANH FROM SINHVIEN
WHERE PHAI = ‘NAM’) AS SV JOIN
(SELECT MANGANH
FROM NGANH
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6060))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6060))6060
WHERE TENNGANH = ‘Sư phạm Tin học’) AS N
ON SV.MANGANH = N.MANGANH
UU
DLDL
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6161))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6161)) 61
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
SELECT NV TENNV
Ví dụ
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
SELECT NV.TENNV
FROM NHANVIEN NV, THUCHIEN TH, DUAN DA
WHERE (DA.TEN = ”A”) AND (DA.MADA = TH.MADA) AND
(NV.MANV = TH.MANV) AND (NS > “12/31/1978”)
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
Ngôn ngữ ĐSQH
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
∏ NV.TENNV ( (σDA.TTEN = ‘A’ AND DA.MADA = TH.MADA AND
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
NV.MANV = TH.MANV AND NS > ’12/31/1978’
(NHANVIEN X THUCHIEN X DUAN))
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6262))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6262))6262
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQHSỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
TENNV
∏ NV.TENNV ( (σDA.TTEN = ‘A’ AND
DA.MADA = TH.MADA AND NV.MANV = TH.MANV
AND NS > ’12/31/1978’
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
DA.TEN=”A” AND
DA.MADA=TH.MADA AND
NV.MANV=TH.MANV AND
AND NS > 12/31/1978
(NHANVIEN X THUCHIEN X DUAN))
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NS>”12/31/1978”
X
Phép chọn
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
DUAN
X
Phép chiếu
Quan hệ
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
THUCHIEN
NHANVIEN
Quan hệ
Phép tíchx
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6363))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6363))
Cây biểu diễn biểu thức truy vấnPhép kết
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
TENNV
DA MADA=
TENNV
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
X
DA.MADA=
TH.MADA
DA.TEN=”A” AND
DA.MADA=TH.MADA AND
NV.MANV=TH.MANV AND
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
DA.TEN=”A”NV.MANV=
TH.MANV
NS>”12/31/1978”
X
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
DUANX
DUAN
X
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
THUCHIEN
NHANVIEN
NS > ”12/31/1978”
THUCHIEN
NHANVIEN
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6464))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6464))
Đưa phép chọn xuống sâu các nhánh
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
TENNV
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
TENNV
NV.MANV=
TH MANV
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
X
TH.MANV
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
NS > ”12/31/1978”
DA.MADA=
TH.MADA
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
X NHANVIEN
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
THUCHIEN
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6565))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6565))
DUAN
Áp dụng các phép chọn chặt chẽ trước
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
TENNV
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
NV.MANV=
TH.MANV
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
DA.MADA=
TH.MADA NS > ”12/31/1978”
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
THUCHIEN NHANVIEN
DA.TEN=”A”
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
DUAN Th thế á hé tí h D t à hé h
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6666))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6666))
DUAN Thay thế các phép tích Descartes và phép chọn
bằng phép kết
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
TENNV
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
TENNV
NV.MANV=
TH.MANV
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
MANV MANV, TEN
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
DA.MADA=
TH.MADA
NS > ”12/31/1978”
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
NHANVIEN
MANV,
MADA
MADA
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
THUCHIENDA.TEN=”A”
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6767))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6767))6767
DUAN
Di chuyển các phép chiếu xuống các nhánh
UU
DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH
SỞDỮLiỆSỞDỮLiỆUU
RÚCCSDRÚCCSD
Ngôn ngữ ĐSQH
∏ ((
NTRỊCƠSNTRỊCƠS
CẤUTRCẤUTR
∏ NV.TENNV ((∏ MANV, TENNV(σNS > ’12/31/1978’ (NHANVIEN)))
NHANVIEN MANV = THUCHIEN MANV
HẦNQuẢNHẦNQuẢN
HNGHĨAHNGHĨA
(∏ MANV(∏MADA (σTENDA=‘A’(DUAN))) (∏MADA,MANV(THUCHIEN)) ))
DUAN.MADA = THUCHIEN.MADA
NHANVIEN,MANV = THUCHIEN.MANV
NGNGHỌCPHHỌCPH
NHĐỊNHNHĐỊNH
BÀIGIẢNBÀIGIẢN
CÂULỆCÂULỆ
TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6868))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6868))6868

More Related Content

Viewers also liked

Bai giang-an-toan-va-bao-mat-he-thong-thong-tin-lxt
Bai giang-an-toan-va-bao-mat-he-thong-thong-tin-lxtBai giang-an-toan-va-bao-mat-he-thong-thong-tin-lxt
Bai giang-an-toan-va-bao-mat-he-thong-thong-tin-lxtstartover123
 
Các thuật toán mã hóa
Các thuật toán mã hóaCác thuật toán mã hóa
Các thuật toán mã hóadlmonline24h
 
An Toàn và bảo mật HTTT-Cơ bản về mã hoá (cryptography)
An Toàn và bảo mật HTTT-Cơ bản về mã hoá (cryptography)An Toàn và bảo mật HTTT-Cơ bản về mã hoá (cryptography)
An Toàn và bảo mật HTTT-Cơ bản về mã hoá (cryptography)dlmonline24h
 
12. Indexing and Hashing in DBMS
12. Indexing and Hashing in DBMS12. Indexing and Hashing in DBMS
12. Indexing and Hashing in DBMSkoolkampus
 

Viewers also liked (6)

Giáo trình mật mã học công nghệ thông tin
Giáo trình mật mã học công nghệ thông tinGiáo trình mật mã học công nghệ thông tin
Giáo trình mật mã học công nghệ thông tin
 
Bai giang-an-toan-va-bao-mat-he-thong-thong-tin-lxt
Bai giang-an-toan-va-bao-mat-he-thong-thong-tin-lxtBai giang-an-toan-va-bao-mat-he-thong-thong-tin-lxt
Bai giang-an-toan-va-bao-mat-he-thong-thong-tin-lxt
 
Các thuật toán mã hóa
Các thuật toán mã hóaCác thuật toán mã hóa
Các thuật toán mã hóa
 
An Toàn và bảo mật HTTT-Cơ bản về mã hoá (cryptography)
An Toàn và bảo mật HTTT-Cơ bản về mã hoá (cryptography)An Toàn và bảo mật HTTT-Cơ bản về mã hoá (cryptography)
An Toàn và bảo mật HTTT-Cơ bản về mã hoá (cryptography)
 
B tree
B treeB tree
B tree
 
12. Indexing and Hashing in DBMS
12. Indexing and Hashing in DBMS12. Indexing and Hashing in DBMS
12. Indexing and Hashing in DBMS
 

Similar to Db 07

Bao thuc tap tot nghiep vo minh truong 10299191
Bao thuc tap tot nghiep vo minh truong 10299191Bao thuc tap tot nghiep vo minh truong 10299191
Bao thuc tap tot nghiep vo minh truong 10299191Cu Sock
 
Ql ngân hàng và trắc nghiệm đề thi đại học
Ql ngân hàng và trắc nghiệm đề thi đại họcQl ngân hàng và trắc nghiệm đề thi đại học
Ql ngân hàng và trắc nghiệm đề thi đại họcVcoi Vit
 
Dap an va de thi dai hoc mon hoa khoi A nam 2013
Dap an va de thi dai hoc mon hoa khoi A nam 2013Dap an va de thi dai hoc mon hoa khoi A nam 2013
Dap an va de thi dai hoc mon hoa khoi A nam 2013dethinet
 
Thông tin tuyển sinh khu vực TP HCM
Thông tin tuyển sinh khu vực TP HCMThông tin tuyển sinh khu vực TP HCM
Thông tin tuyển sinh khu vực TP HCMonthitot24h
 
Thông tin tuyển sinh các trường ĐH-CĐ Thành phố Hồ Chí Minh
Thông tin tuyển sinh các trường ĐH-CĐ Thành phố Hồ Chí MinhThông tin tuyển sinh các trường ĐH-CĐ Thành phố Hồ Chí Minh
Thông tin tuyển sinh các trường ĐH-CĐ Thành phố Hồ Chí Minhgiaoduc0123
 
KHO SÁNG KIẾN KINH NGHIỆM, TIỂU LUẬN, LUẬN VĂN…MẦM NON, TIỂU HỌC, THCS, THPT
KHO SÁNG KIẾN KINH NGHIỆM, TIỂU LUẬN, LUẬN VĂN…MẦM NON, TIỂU HỌC, THCS, THPTKHO SÁNG KIẾN KINH NGHIỆM, TIỂU LUẬN, LUẬN VĂN…MẦM NON, TIỂU HỌC, THCS, THPT
KHO SÁNG KIẾN KINH NGHIỆM, TIỂU LUẬN, LUẬN VĂN…MẦM NON, TIỂU HỌC, THCS, THPTamakong amakong
 
2. thong tin ts dh, cd thanh pho hcm
2. thong tin ts dh, cd thanh pho hcm2. thong tin ts dh, cd thanh pho hcm
2. thong tin ts dh, cd thanh pho hcmLinh Nguyễn
 
Thông tin tuyển sinh các trường Đại học - Cao Đẳng tại TP.Hồ Chí Minh
Thông tin tuyển sinh các trường Đại học - Cao Đẳng tại TP.Hồ Chí MinhThông tin tuyển sinh các trường Đại học - Cao Đẳng tại TP.Hồ Chí Minh
Thông tin tuyển sinh các trường Đại học - Cao Đẳng tại TP.Hồ Chí MinhLinh Nguyễn
 
danh sach trương dh, cd tai hcm
danh sach trương dh, cd tai hcmdanh sach trương dh, cd tai hcm
danh sach trương dh, cd tai hcmhoanhai
 
danh sach trương dh, cd tai hcm
danh sach trương dh, cd tai hcmdanh sach trương dh, cd tai hcm
danh sach trương dh, cd tai hcmbanhxeohh
 
Quan ly dien tu trong labo phr (final)
Quan ly dien tu trong labo phr (final)Quan ly dien tu trong labo phr (final)
Quan ly dien tu trong labo phr (final)DentechUMP
 
GIÁO DỤC BĐKH TRONG CÁC TRƯỜNG TCCN
GIÁO DỤC BĐKH TRONG CÁC TRƯỜNG TCCNGIÁO DỤC BĐKH TRONG CÁC TRƯỜNG TCCN
GIÁO DỤC BĐKH TRONG CÁC TRƯỜNG TCCNKim Hoa Phạm Thị
 

Similar to Db 07 (20)

Db 09
Db 09Db 09
Db 09
 
Db 04
Db 04Db 04
Db 04
 
Db 05
Db 05Db 05
Db 05
 
Db 02
Db 02Db 02
Db 02
 
Db 00
Db 00Db 00
Db 00
 
Bao thuc tap tot nghiep vo minh truong 10299191
Bao thuc tap tot nghiep vo minh truong 10299191Bao thuc tap tot nghiep vo minh truong 10299191
Bao thuc tap tot nghiep vo minh truong 10299191
 
Db 06
Db 06Db 06
Db 06
 
Ql ngân hàng và trắc nghiệm đề thi đại học
Ql ngân hàng và trắc nghiệm đề thi đại họcQl ngân hàng và trắc nghiệm đề thi đại học
Ql ngân hàng và trắc nghiệm đề thi đại học
 
Dap an va de thi dai hoc mon hoa khoi A nam 2013
Dap an va de thi dai hoc mon hoa khoi A nam 2013Dap an va de thi dai hoc mon hoa khoi A nam 2013
Dap an va de thi dai hoc mon hoa khoi A nam 2013
 
Thông tin tuyển sinh khu vực TP HCM
Thông tin tuyển sinh khu vực TP HCMThông tin tuyển sinh khu vực TP HCM
Thông tin tuyển sinh khu vực TP HCM
 
Thông tin tuyển sinh các trường ĐH-CĐ Thành phố Hồ Chí Minh
Thông tin tuyển sinh các trường ĐH-CĐ Thành phố Hồ Chí MinhThông tin tuyển sinh các trường ĐH-CĐ Thành phố Hồ Chí Minh
Thông tin tuyển sinh các trường ĐH-CĐ Thành phố Hồ Chí Minh
 
KHO SÁNG KIẾN KINH NGHIỆM, TIỂU LUẬN, LUẬN VĂN…MẦM NON, TIỂU HỌC, THCS, THPT
KHO SÁNG KIẾN KINH NGHIỆM, TIỂU LUẬN, LUẬN VĂN…MẦM NON, TIỂU HỌC, THCS, THPTKHO SÁNG KIẾN KINH NGHIỆM, TIỂU LUẬN, LUẬN VĂN…MẦM NON, TIỂU HỌC, THCS, THPT
KHO SÁNG KIẾN KINH NGHIỆM, TIỂU LUẬN, LUẬN VĂN…MẦM NON, TIỂU HỌC, THCS, THPT
 
Db 03
Db 03Db 03
Db 03
 
2. thong tin ts dh, cd thanh pho hcm
2. thong tin ts dh, cd thanh pho hcm2. thong tin ts dh, cd thanh pho hcm
2. thong tin ts dh, cd thanh pho hcm
 
Thông tin tuyển sinh các trường Đại học - Cao Đẳng tại TP.Hồ Chí Minh
Thông tin tuyển sinh các trường Đại học - Cao Đẳng tại TP.Hồ Chí MinhThông tin tuyển sinh các trường Đại học - Cao Đẳng tại TP.Hồ Chí Minh
Thông tin tuyển sinh các trường Đại học - Cao Đẳng tại TP.Hồ Chí Minh
 
danh sach trương dh, cd tai hcm
danh sach trương dh, cd tai hcmdanh sach trương dh, cd tai hcm
danh sach trương dh, cd tai hcm
 
danh sach trương dh, cd tai hcm
danh sach trương dh, cd tai hcmdanh sach trương dh, cd tai hcm
danh sach trương dh, cd tai hcm
 
Quan ly dien tu trong labo phr (final)
Quan ly dien tu trong labo phr (final)Quan ly dien tu trong labo phr (final)
Quan ly dien tu trong labo phr (final)
 
GIÁO DỤC BĐKH TRONG CÁC TRƯỜNG TCCN
GIÁO DỤC BĐKH TRONG CÁC TRƯỜNG TCCNGIÁO DỤC BĐKH TRONG CÁC TRƯỜNG TCCN
GIÁO DỤC BĐKH TRONG CÁC TRƯỜNG TCCN
 
PPNCKT_Chuong 3 p1
PPNCKT_Chuong 3 p1PPNCKT_Chuong 3 p1
PPNCKT_Chuong 3 p1
 

Db 07

  • 1. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học TRUY VẤN DỮ LIỆUTRUY VẤN DỮ LIỆU Ố Ó ẤTỐI ƯU HÓA TRUY VẤN Trần Ngọc Bảo Email: tnbao.dhsp@gmail.com
  • 2. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học TỐI ƯU HÓATỐI ƯU HÓA TRUY VẤNTRUY VẤNTRUY VẤNTRUY VẤN • Giới thiệu về tối ưu hóa truy vấn • Các qui tắc biến đổi tương đương • Giải thuật Heuristic cho tối ưu hóa truy vấn
  • 3. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học TỐI ƯU HÓATỐI ƯU HÓA TRUY VẤNTRUY VẤNTRUY VẤNTRUY VẤN • Giới thiệu về tối ưu hóa truy vấn • Các qui tắc biến đổi tương đương • Giải thuật Heuristic cho tối ưu hóa truy vấn
  • 4. UU DLDL Phò iá t i ột t ờ Đ i h ố ti h hó iệ ả lý đă ký Giới thiệu về tối ưu hóa truy vấn SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Phòng giáo vụ tại một trường Đại học muốn tin học hóa việc quản lý đăng ký học chuyên đề của sinh viên. Kết quả phân tích thiết kế được mô hình CSDL quan hệ như sau: NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) 2. NGANH (MANGANH, TENNGANH, SOCD, TSSV) HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA 3. CHUYENDE (MACD, TENCD, SOSVTD) 2. NGANH (MANGANH, TENNGANH, SOCD, TSSV) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH 4. CD_NGANH (MACD, MANGANH) 5. CD_MO(MACD, NAM, HOCKY) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ 6. DANGKY(MASV, MACD, NAM, HOCKY) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (44))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (44))44
  • 5. UU DLDL Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (55))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (55))55 Lược đồ CSDL ứng dụng quản lý chuyên đề
  • 6. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 1 SINHVIEN (MASV HOTEN PHAI NGAYSINH MANGANH) NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) MASV HOTEN PHAI NGAYSINH MANGANH 29 0 00 C h 0/ 0/ 9 9 S 0 HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 K29 103 001 Han Quoc Viet Nam 3/2/1979 SP103 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 K29.201.001 Ly Thanh Nam 3/8/1979 SP201 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (66))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (66))66
  • 7. UU DLDL Giới thiệu về tối ưu hóa truy vấn ầ ấ SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 2 NGANH (MANGANH TENNGANH SOCD TSSV) Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MANGANH TENNGANH SOCD TSSV SP103 Sư Phạm Tin học 8 800 2. NGANH (MANGANH, TENNGANH, SOCD, TSSV) HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA SP103 Sư Phạm Tin học 8 800 SP101 Sư Phạm Toán 5 1000 SP201 Sư Phạm Hóa 3 1500 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH SP201 Sư Phạm Hóa 3 1500 SP102 Sư Phạm Lý 4 1200 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ CNTT Khoa học máy tính 8 160 SP104 Sư Phạm Lý 6 1000 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (77))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (77))77 SP105 Sư phạm Anh 2 1100
  • 8. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin học 8 800 SP101 Sư Phạm Toán 5 1000 SP201 Sư Phạm Hóa 3 1500 HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 K29.201.001 Ly Thanh Nam 3/8/1979 SP201 SP102 Sư Phạm Lý 4 1200 CNTT Khoa học máy tính 8 160 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 SP104 Sư Phạm Lý 6 1000 SP105 Sư phạm Anh 2 1100 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ MASV HOTEN NGAYSINH K29.103.001 Han Quoc Viet 3/2/1979 Kết quả truy vấn: 1 dòng TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (88))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (88))88 K29.103.001 Han Quoc Viet 3/2/1979
  • 9. UU DLDL Giới thiệu về tối ưu hóa truy vấn Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 1. Cách 1: Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM SINHVIEN SV, NGANH N WHERE SV.MANGANH = N.MANGANH AND PHAI = ‘NAM’ AND TENNGANH ‘S h Ti h ’ HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA 2. Cách 2: TENNGANH = ‘Sư phạm Tin học’ NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH SELECT MASV, HOTEN, NGAYSINH FROM SINHVIEN SV JOIN NGANH N ON SV.MANGANH = N.MANGANH WHERE PHAI = ‘NAM’ AND TENNGANH = ‘Sư phạm Tin học’ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ WHERE PHAI = NAM AND TENNGANH = Sư phạm Tin học TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (99))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (99))99
  • 10. UU DLDL Giới thiệu về tối ưu hóa truy vấn Yêu cầu truy vấn: Liệt kê danh sách (MaSV HoTen NgaySinh) sinh viên SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 3. Cách 3: SELECT MASV HOTEN NGAYSINH Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM (SELECT MASV,TENSV, NGAYSINH, MANGANH FROM SINHVIEN HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA WHERE PHAI = ‘NAM’) AS SV JOIN (SELECT MANGANH FROM NGANH WHERE TENNGANH = ‘Sư phạm Tin học’) AS N NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH WHERE TENNGANH = Sư phạm Tin học ) AS N ON SV.MANGANH = N.MANGANH ễ ễễ ễ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ Trong 3 cách biểu diễn như trên cách nào biểu diễn nàoTrong 3 cách biểu diễn như trên cách nào biểu diễn nào chạy chậm nhất (xấu nhất) ?, cách biểu diễn nào chạychạy chậm nhất (xấu nhất) ?, cách biểu diễn nào chạy TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1010))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1010))1010 nhanh nhất (tối ưu nhất) ?nhanh nhất (tối ưu nhất) ?
  • 11. UU DLDL Giới thiệu về tối ưu hóa truy vấn Yêu cầu truy vấn: Liệt kê danh sách (MaSV HoTen NgaySinh) sinh viên SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 1. Cách 1: Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM SINHVIEN SV, NGANH N WHERE SV.MANGANH = N.MANGANH AND PHAI = ‘NAM’ AND TENNGANH ‘S h Ti h ’ HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA TENNGANH = ‘Sư phạm Tin học’ NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1111))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1111))1111
  • 12. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MASV HOTEN PHAI NGAYSINH MANGANH K29 101 001 N C Ph N 10/10/1979 SP101 g g MANGANH TENNGANH SOCD TSSV SP103 Sư Phạm Tin học 8 800 HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP101 Sư Phạm Toán 5 1000 SP201 Sư Phạm Hóa 3 1500 SP102 Sư Phạm Lý 4 1200 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 K29.201.001 Ly Thanh Nam 3/8/1979 SP201 K29 201 002 Tran Ngoc Dung Nu 4/5/1979 SP201 ạ ý CNTT Khoa học máy tính 8 160 SP104 Sư Phạm Lý 6 1000 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 SP105 Sư phạm Anh 2 1100 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1212))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1212))1212
  • 13. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP103 Sư Phạm Tin học 8 800 g g HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP101 Sư Phạm Toán 5 1000 K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP201 Sư Phạm Hóa 3 1500 K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP102 Sư Phạm Lý 4 1200 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 CNTT Khoa học máy tính 8 160 K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP104 Sư Phạm Lý 6 1000 K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP105 Sư phạm Anh 2 1100 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP103 Sư Phạm Tin học 8 800 K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP101 Sư Phạm Toán 5 1000 K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP201 Sư Phạm Hóa 3 1500 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1313))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1313))1313 …..
  • 14. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin học 8 800 g g HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP101 Sư Phạm Toán 5 1000 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP201 Sư Phạm Hóa 3 1500 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP102 Sư Phạm Lý 4 1200 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 CNTT Khoa học máy tính 8 160 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP104 Sư Phạm Lý 6 1000 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP105 Sư phạm Anh 2 1100 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP103 Sư Phạm Tin học 8 800 K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP101 Sư Phạm Toán 5 1000 K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP201 Sư Phạm Hóa 3 1500 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1414))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1414))1414 …..
  • 15. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV g g Kết quả truy vấn: 1 dòng HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin học 8 800 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP101 Sư Phạm Toán 5 1000 i / / h ó NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP201 Sư Phạm Hóa 3 1500 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP102 Sư Phạm Lý 4 1200 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 CNTT Khoa học máy tính 8 160 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP104 Sư Phạm Lý 6 1000 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP105 Sư phạm Anh 2 1100 K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP103 Sư Phạm Tin học 8 800 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1515))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1515))1515
  • 16. UU DLDL Giới thiệu về tối ưu hóa truy vấn ầ ấ SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 2. Cách 2: Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR 2. Cách 2: SELECT MASV, HOTEN, NGAYSINH FROM SINHVIEN SV JOIN NGANH N ON SV.MANGANH = N MANGANH HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA N.MANGANH WHERE PHAI = ‘NAM’ AND TENNGANH = ‘Sư phạm Tin học’ NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1616))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1616))1616
  • 17. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 2. Cách 2: SinhVien Nganh 7 x 1 = 7 dòng NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MASV HOTEN PHAI NGAYSINH MANGANH K29 101 001 N C Ph N 10/10/1979 SP101 g g MANGANH TENNGANH SOCD TSSV SP103 Sư Phạm Tin học 8 800 HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin học 8 800 SP101 Sư Phạm Toán 5 1000 SP201 Sư Phạm Hóa 3 1500 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 K29.201.001 Ly Thanh Nam 3/8/1979 SP201 K29 201 002 Tran Ngoc Dung Nu 4/5/1979 SP201 SP102 Sư Phạm Lý 4 1200 CNTT Khoa học máy tính 8 160 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 SP104 Sư Phạm Lý 6 1000 SP105 Sư phạm Anh 2 1100 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1717))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1717))1717
  • 18. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 2. Cách 2: SinhVien Nganh 7 x 1 = 7 dòng NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MASV HOTEN PHAI NGAYSINH MANGANH g g MANGANH TENNGANH SOCD TSSV SP103 Sư Phạm Tin học 8 800 HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin học 8 800 SP101 Sư Phạm Toán 5 1000 SP201 Sư Phạm Hóa 3 1500 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 K29.201.001 Ly Thanh Nam 3/8/1979 SP201 SP102 Sư Phạm Lý 4 1200 CNTT Khoa học máy tính 8 160 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 SP104 Sư Phạm Lý 6 1000 SP105 Sư phạm Anh 2 1100 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1818))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1818))1818
  • 19. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 2. Cách 2: SinhVien Nganh 7 x 1 = 7 dòng NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV Kết quả truy vấn: 1 dòng g g HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP103 Sư Phạm Tin học 8 800 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1919))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (1919))1919
  • 20. UU DLDL Giới thiệu về tối ưu hóa truy vấn ầ ấ SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 3 Cách 3: Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR 3. Cách 3: SELECT MASV, HOTEN, NGAYSINH FROM (SELECT MASV,HOTEN, NGAYSINH, MANGANH HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ( , , , FROM SINHVIEN WHERE PHAI = ‘NAM’) AS SV JOIN (SELECT MANGANH FROM NGANH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH FROM NGANH WHERE TENNGANH = ‘Sư phạm Tin học’) AS N ON SV.MANGANH = N.MANGANH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2020))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2020))2020
  • 21. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 3. Cách 3: Bước 1 NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA (SELECT MASV,HOTEN, NGAYSINH, MANGANH FROM SINHVIEN WHERE PHAI = ‘NAM’) AS SV JOIN (SELECT MANGANH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH (SELECT MANGANH FROM NGANH WHERE TENNGANH = ‘Sư phạm Tin học’) AS N ON SV.MANGANH = N.MANGANH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ Chọn các dòngChọn các dòng [MASV, HOTEN, NGAYSINH, MANGANH][MASV, HOTEN, NGAYSINH, MANGANH] có thuộccó thuộc TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2121))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2121))2121 tínhtính PHAI = ‘NAM’PHAI = ‘NAM’ trong quan hệtrong quan hệ SINHVIENSINHVIEN
  • 22. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 3. Cách 3: Bước 1 (SELECT MASV TENSV NGAYSINH NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR (SELECT MASV,TENSV, NGAYSINH, MANGANH FROM SINHVIEN WHERE PHAI = ‘NAM’) HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA MASV HOTEN PHAI NGAYSINH MANGANH K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 MASV HOTEN NGAYSINH MANGANH Kết quả truy vấn: 3 dòng NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 K29.101.001 Nguyen Cong Phu 10/10/1979 SP101 K29.103.001 Han Quoc Viet 3/2/1979 SP103 K29.201.001 Ly Thanh 3/8/1979 SP201 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ K29.201.001 Ly Thanh Nam 3/8/1979 SP201 K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2222))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2222))2222
  • 23. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 3. Cách 3: Bước 2 NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM (SELECT MASV HOTEN NGAYSINH MANGANH HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA (SELECT MASV,HOTEN, NGAYSINH, MANGANH FROM SINHVIEN WHERE PHAI = ‘NAM’) AS SV JOIN (SELECT MANGANH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH FROM NGANH WHERE TENNGANH = ‘Sư phạm Tin học’) AS N ON SV.MANGANH = N.MANGANH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ Chọn các dòngChọn các dòng [MANGANH][MANGANH] có thuộc tính TENNGANHcó thuộc tính TENNGANH = ‘Sư phạm= ‘Sư phạm Ti h ’Ti h ’ t hệt hệ NGANHNGANH TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2323))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2323))2323 Tin học’Tin học’ trong quan hệtrong quan hệ NGANHNGANH
  • 24. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 3. Cách 3: Bước 2 (SELECT MANGANH NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MANGANH TENNGANH SOCD TSSV FROM NGANH WHERE TENNGANH = ‘Sư phạm Tin học’) HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA MANGANH TENNGANH SOCD TSSV SP103 Sư Phạm Tin học 8 800 SP101 Sư Phạm Toán 5 1000 MANGANH Kết quả truy vấn: 1 dòng NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH SP201 Sư Phạm Hóa 3 1500 SP102 Sư Phạm Lý 4 1200 CNTT Khoa học máy tính 8 160 SP103 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ CNTT Khoa học máy tính 8 160 SP104 Sư Phạm Lý 6 1000 SP105 Sư phạm Anh 2 1100 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2424))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2424))2424
  • 25. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 3. Cách 3: Bước 3 NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA (SELECT MASV,HOTEN, NGAYSINH, MANGANH FROM SINHVIEN WHERE PHAI = ‘NAM’) AS SV JOIN (SELECT MANGANH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH (SELECT MANGANH FROM NGANH WHERE TENNGANH = ‘Sư phạm Tin học’) AS N ON SV.MANGANH = N.MANGANH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2525))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2525))2525
  • 26. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 3. Cách 3: Bước 3 [Bước 1] AS SV JOIN NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR [Bước 1] AS SV JOIN [Bước 2] AS N ON SV.MANGANH = N.MANGANH HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA MANGANH SP103 Kết quả truy vấn bước 2 (N) MASV HOTEN NGAYSINH MANGANH K29 101 001 Nguyen Cong Phu 10/10/1979 SP101 Kết quả truy vấn bước 1 (SV) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH SP103K29.101.001 Nguyen Cong Phu 10/10/1979 SP101 K29.103.001 Han Quoc Viet 3/2/1979 SP103 K29.201.001 Ly Thanh 3/8/1979 SP201 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ MASV HOTEN NGAYSINH MANGANH MANGANH K29 103 001 H Q Vi t 3/2/1979 SP103 SP103 TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2626))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2626))2626 K29.103.001 Han Quoc Viet 3/2/1979 SP103 SP103
  • 27. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 3. Cách 3: Bước 4 NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA (SELECT MASV,TENSV, NGAYSINH, MANGANH FROM SINHVIEN WHERE PHAI = ‘NAM’) AS SV JOIN (SELECT MANGANH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH (SELECT MANGANH FROM NGANH WHERE TENNGANH = ‘Sư phạm Tin học’) AS N ON SV.MANGANH = N.MANGANH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ Chiếu trên thuộc tínhChiếu trên thuộc tính [MASV HOTEN NGAYSINH][MASV HOTEN NGAYSINH] trong kết quả củatrong kết quả của TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2727))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2727))2727 Chiếu trên thuộc tínhChiếu trên thuộc tính [MASV, HOTEN, NGAYSINH][MASV, HOTEN, NGAYSINH] trong kết quả củatrong kết quả của Bước 3Bước 3
  • 28. UU DLDL ầ ấ Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” 3. Cách 3: Bước 4 SELECT MASV, HOTEN, NGAYSINH NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR Kết quả truy vấn bước 3 , , FROM [KQ BƯỚC 3] HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA MASV HOTEN NGAYSINH MANGANH MANGANH K29.103.001 Han Quoc Viet 3/2/1979 SP103 SP103 ế quả uy ấ bước 3 NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH MASV HOTEN NGAYSINH K29.103.001 Han Quoc Viet 3/2/1979 BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ Q TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2828))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2828))2828
  • 29. UU DLDL Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Trong 3 cách biểu diễn như trên cách nào biểu diễn nàoTrong 3 cách biểu diễn như trên cách nào biểu diễn nào chạy chậm nhất (xấu nhất) ?, cách biểu diễn nào chạychạy chậm nhất (xấu nhất) ?, cách biểu diễn nào chạy NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR nhanh nhất (tối ưu nhất) ?nhanh nhất (tối ưu nhất) ? HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA 1. Cách 1: Xấu nhất Đơn giản nhất NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH 2. Cách 2: Thường sử dụng nhất Trung bình BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ 3. Cách 3: Tốt nhất Phức tạp nhất TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2929))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (2929))2929
  • 30. UU DLDL Giới thiệu về tối ưu hóa truy vấn Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 1. Cách 1: Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM SINHVIEN SV NGANH N Ngôn ngữ SQL HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA FROM SINHVIEN SV, NGANH N WHERE SV.MANGANH = N.MANGANH AND PHAI = ‘NAM’ AND TENNGANH = ‘Sư phạm Tin học’ NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH Ngôn ngữ ĐSQL ∏ σ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ ∏MASV, HOTEN, NGAYSINH( σTENNGANH = ‘Sư phạm Tin học’’ ∧ PHAI = ‘NAM’ ∧ SINHVIEN.MANGANH = NGANH.MANGANH TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3030))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3030))3030 (SINHVIEN x NGANH))
  • 31. UU DLDL Giới thiệu về tối ưu hóa truy vấn Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 2. Cách 2: Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR Ngôn ngữ SQL SELECT MASV, HOTEN, NGAYSINH FROM SINHVIEN SV JOIN NGANH N ON SV MANGANH HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA FROM SINHVIEN SV JOIN NGANH N ON SV.MANGANH = N.MANGANH WHERE PHAI = ‘NAM’ AND TENNGANH = ‘Sư phạm Tin học’ NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH Ngôn ngữ ĐSQL ∏ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ ∏MASV, HOTEN, NGAYSINH( σTENNGANH = ‘Sư phạm Tin học’’ ∧ PHAI = ‘NAM’ (SINHVIEN NGANH)) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3131))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3131))3131 SINHVIEN.MANGANH = NGANH.MANGANH
  • 32. UU DLDL Giới thiệu về tối ưu hóa truy vấn Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 3. Cách 3: Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” N ô ữ SQL NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR Ngôn ngữ SQL SELECT MASV, HOTEN, NGAYSINH FROM (SELECT MASV HOTEN NGAYSINH MANGANH FROM SINHVIEN HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA (SELECT MASV,HOTEN, NGAYSINH, MANGANH FROM SINHVIEN WHERE PHAI = ‘NAM’) AS SV JOIN (SELECT MANGANH FROM NGANH WHERE TENNGANH = ‘Sư phạm Tin học’) AS N ON SV.MANGANH = N.MANGANH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH Ngôn ngữ ĐSQL BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ ∏MASV, HOTEN, NGAYSINH((πMASV,HOTEN,NGAYSINH,MANGANH( σPHAI (SINHVIEN))) (π (σ (NGANH)))) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3232))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3232))3232 = ‘NAM’(SINHVIEN))) (πMANGANH(σNGANH = ‘Sư phạm Tin học’ (NGANH)))) SINHVIEN.MANGANH = NGANH.MANGANH
  • 33. UU DLDL Giới thiệu về tối ưu hóa truy vấnSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Tối ưu hóa truy vấn là một giải thuật HeuricticsTối ưu hóa truy vấn là một giải thuật Heurictics tìm cách biểu diễn các truy vấn cho kết quảtìm cách biểu diễn các truy vấn cho kết quả NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR tìm cách biểu diễn các truy vấn cho kết quảtìm cách biểu diễn các truy vấn cho kết quả nhanh nhất (tối ưu nhất) áp dụng một số qui tắcnhanh nhất (tối ưu nhất) áp dụng một số qui tắc HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA biến đổi tương đươngbiến đổi tương đương NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ 1. Cách 1: Xấu nhất 3. Cách 3: Tốt nhất TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3333))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3333))3333
  • 34. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CƠ SỞ DỮ LIỆUCƠ SỞ DỮ LIỆU TỐI ƯU HÓATỐI ƯU HÓA TRUY VẤNTRUY VẤNTRUY VẤNTRUY VẤN • Giới thiệu về tối ưu hóa truy vấn • Các qui tắc biến đổi tương đương • Giải thuật Heuristic cho tối ưu hóa truy vấn
  • 35. UU DLDL Các qui tắc biến đổi tương đương 1 Q i tắ 1 biế đổi dã á hé h SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 1. Qui tắc 1: biến đổi dãy các phép chọn ( ) ( )( )( )......2121 RR cncccnANDcANDc σσσσ ≡ NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR Ví dụ ( ) ( )( )( )21...21 cncccnANDcANDc HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ụ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH σMANGANH = ‘SPS101’ AND PHAI = ‘NAM’ (SINHVIEN) == BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ σMANGANH = ‘SPS101’(σPHAI = ‘NAM’ (SINHVIEN)) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3535))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3535))3535
  • 36. UU DLDL Các qui tắc biến đổi tương đương 2 Q i tắ 2 T SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 2. Qui tắc 2: Tính giao hoán của phép chọn ( )( ) ( )( )RR σσσσ ≡ NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( )( ) ( )( )RR cccc 1221 σσσσ ≡ Ví dụ HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ụ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH σMANGANH = ‘SPS101’(σPHAI = ‘NAM’ (SINHVIEN)) = BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ σPHAI = ‘NAM’(σ MANGANH = ‘SPS01’ (SINHVIEN)) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3636))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3636))3636
  • 37. UU DLDL Các qui tắc biến đổi tương đương 3 Q i tắ 3 Biế ổ ế SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 3. Qui tắc 3: Biến đổi dãy các phép chiếu ( )( )( ) ( )RR ≡ππππ NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( )( )( ) ( )RR DSDSnDSDS ><><><>< ≡ 121 ...... ππππ V HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA Ví dụ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH πMASV, HOTEN (πMASV, HOTEN,PHAI, NGAYSINH (SINHVIEN)) = BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ πMASV, HOTEN (SINHVIEN)) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3737))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3737))3737
  • 38. UU DLDL Các qui tắc biến đổi tương đương 4 Q i tắ 4 T ế SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 4. Qui tắc 4: Tính giao hoán của phép chọn với phép chiếu ( )( ) ( )( )RR πσσπ ≡ NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( )( ) ( )( )RR AnAAccAnAA ,...,2,1,...,2,1 πσσπ ≡ HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA Ví dụ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH πMASV, HOTEN, PHAI (σPHAI = ‘NAM’ (SINHVIEN)) = BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ σPHAI = ‘NAM’(πMASV, HOTEN (SINHVIEN)) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3838))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3838))3838
  • 39. UU DLDL Các qui tắc biến đổi tương đương 5 Q i tắ 5 T ế SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 5. Qui tắc 5: Tính giao hoán của phép tích, phép kết ( ) )( RSSR = NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( ) )( RSSR CC = ( ) HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ( ) )( RxSSxR =Ví dụ 1 SINHVIEN (MASV HOTEN PHAI NGAYSINH MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH (SINHVIEN NGANH ) 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) 2. NGANH (MANGANH, TENNGANH) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ ( ) = (NGANH (SINHVIEN) SINHVIEN.MANGANH = NGANH.MANGANH TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3939))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (3939)) SINHVIEN.MANGANH = NGANH.MANGANH
  • 40. UU DLDL Các qui tắc biến đổi tương đương 6 Q i tắ 6 SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 6. Qui tắc 6: Nếu tất cả các thuộc tính trong c đều là thuộc tính của R, thì NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( ) S))((S RR cc σσ ≡ g HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ( ) ))(( cc Ví dụ 1 SINHVIEN (MASV HOTEN PHAI NGAYSINH MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH σPHAI = ‘NAM’(SINHVIEN NGANH) 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) 2. NGANH (MANGANH, TENNGANH) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ σPHAI = NAM (S G ) = (σ ) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4040))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4040)) (σPHAI = ‘NAM’ (SINHVIEN)) NGANH
  • 41. UU DLDL Các qui tắc biến đổi tương đương 6 Q i tắ 6 SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 6. Qui tắc 6: Nếu c=c1 and c2, trong đó c1 là một thuộc tính của R, c2 là một thuộc tính của S thì: NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( ) )(S)())((S 21 ccc RR σσσ ≡ của S, thì: HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA 2 Ví dụ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH σPHAI = ‘NAM’ AND TENNGANH = ‘SP TIN’(SINHVIEN NGANH) 2. NGANH (MANGANH, TENNGANH) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ σPHAI = NAM AND TENNGANH = SP TIN (S G ) = (σ ) (σ ) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4141))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4141)) (σPHAI = ‘NAM’ (SINHVIEN)) (σTENNGANH = ‘SP TIN’ (NGANH))
  • 42. UU DLDL Các qui tắc biến đổi tương đương 6 Q i tắ 6 SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 6. Qui tắc 6: Nếu tất cả các thuộc tính trong c đều là thuộc tính của R, thì NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( ) Sx))((Sx RR cc σσ ≡ g HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ( ) ))(( cc Ví dụ 1 SINHVIEN (MASV HOTEN PHAI NGAYSINH MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH σPHAI = ‘NAM’(SINHVIEN X NGANH) 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) 2. NGANH (MANGANH, TENNGANH) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ σPHAI = NAM (S G ) = (σ ) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4242))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4242))4242 (σPHAI = ‘NAM’ (SINHVIEN)) X NGANH
  • 43. UU DLDL Các qui tắc biến đổi tương đương 6 Q i tắ 6 SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 6. Qui tắc 6: Nếu c=c1 and c2, trong đó c1 là một thuộc tính của R, c2 là một thuộc tính của S thì: NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( ) )(S)(x))((Sx 1 ccc RR σσσ ≡ của S, thì: HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ( ) )(S)(x))((Sx 21 ccc RR σσσ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH σPHAI = ‘NAM’ AND TENNGANH = ‘SP TIN’(SINHVIEN X NGANH) 2. NGANH (MANGANH, TENNGANH) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ σPHAI = NAM AND TENNGANH = SP TIN (S G ) = (σ ) (σ ) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4343))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4343))4343 (σPHAI = ‘NAM’ (SINHVIEN)) X (σTENNGANH = ‘SP TIN’ (NGANH))
  • 44. UU DLDL Các qui tắc biến đổi tương đương 7 Q i tắ 7 SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 7. Qui tắc 7: Giả sử L = {A1,…,AN,B1,…,BM}, trong đó A1,…,AN là thuộc tính của R; B1 BM là thuộc tính của S NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( ) ))(())((S SRR ∏∏∏ thuộc tính của R; B1,…,BM là thuộc tính của S Nếu điều kiện kết nối c chỉ chứa các thuộc tính trong L thì HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ( ) ))(())((S M321N321 ,...BB,B,BC,...AA,A,AC SRRL ∏∏≡∏ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) 2 NGANH (MANGANH TENNGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH 2. NGANH (MANGANH, TENNGANH) πMASV,HOTEN,MANGANH,TENNGANH (SINHVIEN NGANH) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ = (πMASV,HOTEN,MANGANH (SINHVIEN)) SINHVIEN.MANGANH = NGANH.MANGANH SINHVIEN MANGANH NGANH MANGANH TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4444))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4444))4444 (πTENNGANH,MANGANH ((NGANH)) SINHVIEN.MANGANH = NGANH.MANGANH
  • 45. UU DLDL Các qui tắc biến đổi tương đương 7 Q i tắ 7 SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 7. Qui tắc 7: Nếu điều kiện kết nối c có chứa các thuộc tính không ở trong L, giả sử là AN 1 AN K của R và BM 1 BM P của S thì NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( ) ))(())((S SRR ∏∏∏ ≡ AN+1,… AN+K của R và BM+1,…,BM+P của S thì HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA ( ) ))(())((S PM2M1MM321KN2N1NN321 ...BBB,...BB,B,BC...AAA,,...AA,A,AC SRRL ∏∏∏ ++++++ ≡ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) 2 NGANH (MANGANH TENNGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH 2. NGANH (MANGANH, TENNGANH) πMASV,HOTEN,TENNGANH (SINHVIEN NGANH) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ = (πMASV,HOTEN,MANGANH (SINHVIEN)) SINHVIEN.MANGANH = NGANH.MANGANH SINHVIEN MANGANH NGANH MANGANH TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4545))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4545)) (πTENNGANH,MANGANH ((NGANH)) SINHVIEN.MANGANH = NGANH.MANGANH
  • 46. UU DLDL Các qui tắc biến đổi tương đương 7 Q i tắ 7 SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 7. Qui tắc 7: Giả sử L = {A1,…,AN,B1,…,BM}, trong đó A1,…,AN là thuộc tính của R; B1 BM là thuộc tính của S NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ( ) ))((x))((Sx M321N321 ,...BB,B,B,...AA,A,A SRRL ∏∏≡∏ thuộc tính của R; B1,…,BM là thuộc tính của S HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) 2 NGANH (MANGANH TENNGANH) NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH 2. NGANH (MANGANH, TENNGANH) πMASV,HOTEN,MANGANH,TENNGANH (SINHVIEN X NGANH) BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ = (πMASV,HOTEN,MANGANH (SINHVIEN)) X SINHVIEN.MANGANH = NGANH.MANGANH SINHVIEN MANGANH NGANH MANGANH TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4646))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4646))4646 (πTENNGANH,MANGANH ((NGANH)) SINHVIEN.MANGANH = NGANH.MANGANH
  • 47. UU DLDL Các qui tắc biến đổi tương đương 8 Q i tắ 8 T SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 8. Qui tắc 8: Tính giao hoán của phép hội, giao RSSRRSSR ∩≡∩∪≡∪ NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR RSSRRSSR ∩≡∩∪≡∪ , HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4747))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4747))4747
  • 48. UU DLDL Các qui tắc biến đổi tương đương 9 Q i tắ 9 T ế SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 9. Qui tắc 9: Tính kết hợp T)(SRT)SR( θθθθ = NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR Trong đó là 1 trong các phép toán , X, ∩, ∪θ HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4848))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4848))4848
  • 49. UU DLDL Các qui tắc biến đổi tương đương 10 Qui tắc 10: Tính phân phối của phép chọn σ đối với các phép toán SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 10.Qui tắc 10: Tính phân phối của phép chọn σ đối với các phép toán Giao (∩), Hội (∪), Trừ (-) NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR (S))((R))()SR( cc σθσθσ =c HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4949))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (4949))4949
  • 50. UU DLDL Các qui tắc biến đổi tương đương 11 Qui tắc 11: Tí h hâ hối ủ hé hiế π đối ới á hé t á SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 11.Qui tắc 11: Tính phân phối của phép chiếu π đối với các phép toán Giao (∩), Hội (∪), Trừ (-) NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR (S))((R))()SR( LL ∏∏=∏ θθL HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5050))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5050))5050
  • 51. UU DLDL Các qui tắc biến đổi tương đương 12 Q i tắ 12 ế ổ SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 12.Qui tắc 12: các biến đổi khác Chuyển các phép (σ, ×) thành phép NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR Chuyển các phép (σ, ) thành phép SR)SxR( c=cσ HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA Hoặc cc NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH c ≡ NOT (c1 AND c2) ≡ NOT (c1) OR NOT (c2) c ≡ NOT (c1 OR c2) ≡ NOT (c1) AND NOT (c2) Hoặc BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5151))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5151))5151
  • 52. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học TỐI ƯU HÓATỐI ƯU HÓA TRUY VẤNTRUY VẤNTRUY VẤNTRUY VẤN • Giới thiệu về tối ưu hóa truy vấn • Các qui tắc biến đổi tương đương • Giải thuật Heuristic cho tối ưu hóa truy vấn
  • 53. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH 1 Dù i ắ 1 á h á hé h liê kiệ hà h 1 dã SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 1. Dùng qui tắc 1, tách các phép chọn liên kiện thành 1 dãy các phép chọn. 2. Dùng qui tắc 2,4,6 và 10, liên quan đến tính giao hoán của NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR g q q g phép chọn và các phép khác để di chuyển phép chọn xuống nhánh của cây. 3 Dùng qui tắc 5 và 9 liên quan đến tính kết hợp của các HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA 3. Dùng qui tắc 5 và 9, liên quan đến tính kết hợp của các phép 2 ngôi để sắp xếp lại các nút lá của cây để các phép chọn được ưu tiên thực hiện trước. 4 Dù i tắ 12 tổ h á tí h D t ới hé h NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH 4. Dùng qui tắc 12, tổ hợp các tích Descartes với phép chọn thành các phép kết. 5. Sử dụng các qui tắc 3, 4, 7 và 11 để tách và đẩy các phép BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ chiếu xuống các nhánh. 6. Nhận biết từng nhánh con biểu diễn cho một nhóm các thao tác có thể được thi hành bằng một chiến lược thực TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5353))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5353)) thao tác có thể được thi hành bằng một chiến lược thực hiện đơn.
  • 54. UU DLDL Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD 1. Cách 1: Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT MASV, HOTEN, NGAYSINH FROM SINHVIEN SV NGANH N Ngôn ngữ SQL HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA FROM SINHVIEN SV, NGANH N WHERE SV.MANGANH = N.MANGANH AND PHAI = ‘NAM’ AND TENNGANH = ‘Sư phạm Tin học’ NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH Ngôn ngữ ĐSQH ∏ σ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ ∏MASV, HOTEN, NGAYSINH( σTENNGANH = ‘Sư phạm Tin học’’ ∧ PHAI = ‘NAM’ ∧ SINHVIEN.MANGANH = NGANH.MANGANH TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5454))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5454))5454 (SINHVIEN x NGANH))
  • 55. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQHSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD ∏MASV, HOTEN, NGAYSINH( σTENNGANH = ‘Sư phạm Tin học’’ ∧ PHAI ‘NAM’ ∧ SINHVIEN MANGANH NGANH MANGANH NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ∧ PHAI = ‘NAM’ ∧ SINHVIEN.MANGANH = NGANH.MANGANH (SINHVIEN x NGANH)) HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA MASV, HOTEN, NGAYSINH TENNGANH = ‘Sư phạm Tin học’ Phép chọn NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH PHAI = ‘NAM’ SINHVIEN.MANGANH = NGANH.MANGANH X Phép chiếu Quan hệ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ NGANHSINHVIEN Quan hệ Phép tíchx TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5555))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5555))5555 Cây biểu diễn biểu thức truy vấnPhép kết
  • 56. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH MASV HOTEN NGAYSINH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD MASV, HOTEN, NGAYSINH TENNGANH = ‘Sư phạm Tin học’ MASV HOTEN NGAYSINH NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR PHAI = ‘NAM’ SINHVIEN.MANGANH = NGANH.MANGANH X MASV, HOTEN, NGAYSINH TENNGANH = ‘Sư phạm Tin học’ HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NGANHSINHVIEN PHAI = ‘NAM’ SINHVIEN.MANGANH = NGANH.MANGANH X NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH Cây biểu diễn biểu thức truy vấn X TENNGANH = ‘Sư phạm Tin học’PHAI = ‘NAM’ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ NGANHSINHVIEN TENNGANH Sư phạm Tin học TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5656))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5656))5656 Đưa phép chọn xuống sâu các nhánh
  • 57. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH MASV HOTEN NGAYSINH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD MASV, HOTEN, NGAYSINH SINHVIEN.MANGANH Thay thế các phép tích Descartes và phép chọn NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR = NGANH.MANGANH X và phép chọn bằng phép kết HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA X TENNGANH = ‘Sư phạm Tin học’PHAI = ‘NAM’ MASV, HOTEN, NGAYSINH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH NGANHSINHVIEN = Sư phạm Tin học SINHVIEN.MANGANH = NGANH.MANGANH TENNGANH PHAI = ‘NAM’ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ NGANHSINHVIEN = ‘Sư phạm Tin học’PHAI = NAM TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5757))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5757))5757
  • 58. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH Di chuyển các phép chiếu xuống các nhánh SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD MASV, HOTEN, NGAYSINH SINHVIEN MANGANH Di chuyển các phép chiếu xuống các nhánh NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SINHVIEN.MANGANH = NGANH.MANGANH TENNGANH = ‘Sư phạm Tin học’PHAI = ‘NAM’ MASV, HOTEN, NGAYSINH SINHVIEN.MANGANH = NGANH.MANGANH HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NGANHSINHVIEN = Sư phạm Tin học MASV, HOTEN, NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH TENNGANH PHAI = ‘NAM’ , , NGAYSINH MANGANH MANGANH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ NGANHSINHVIEN = ‘Sư phạm Tin học’PHAI = NAM TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5858))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5858))5858
  • 59. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH MASV, HOTEN, NGAYSINH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD SINHVIEN.MANGANH = NGANH.MANGANH NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR Chuyển cây truy vấn sang biểu thức ĐSQH MASV, HOTEN, NGAYSINH MANGANH HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA TENNGANH = ‘Sư phạm Tin học’PHAI = ‘NAM’ MANGANH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH NGANHSINHVIEN BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ ∏MASV, HOTEN, NGAYSINH((πMASV,HOTEN,NGAYSINH,MANGANH( σPHAI (SINHVIEN))) (π (σ (NGANH)))) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5959))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (5959)) = ‘NAM’(SINHVIEN))) (πMANGANH(σNGANH = ‘Sư phạm Tin học’ (NGANH)))) SINHVIEN.MANGANH = NGANH.MANGANH
  • 60. UU DLDL Yê ầ t ấ Liệt kê d h á h (M SV H T N Si h) i h iê Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh) sinh viên Nam thuộc ngành “Sư phạm Tin học” Ngôn ngữ ĐSQH NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR g g ∏MASV, HOTEN, NGAYSINH((πMASV,HOTEN,NGAYSINH,MANGANH( σPHAI HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA = ‘NAM’(SINHVIEN))) (πMANGANH(σNGANH = ‘Sư phạm Tin học’ (NGANH)))) SINHVIEN.MANGANH = NGANH.MANGANH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH Ngôn ngữ SQL SELECT MASV, HOTEN, NGAYSINH FROM BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ FROM (SELECT MASV,HOTEN, NGAYSINH, MANGANH FROM SINHVIEN WHERE PHAI = ‘NAM’) AS SV JOIN (SELECT MANGANH FROM NGANH TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6060))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6060))6060 WHERE TENNGANH = ‘Sư phạm Tin học’) AS N ON SV.MANGANH = N.MANGANH
  • 61. UU DLDL SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6161))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6161)) 61
  • 62. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD SELECT NV TENNV Ví dụ NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR SELECT NV.TENNV FROM NHANVIEN NV, THUCHIEN TH, DUAN DA WHERE (DA.TEN = ”A”) AND (DA.MADA = TH.MADA) AND (NV.MANV = TH.MANV) AND (NS > “12/31/1978”) HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA Ngôn ngữ ĐSQH NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH ∏ NV.TENNV ( (σDA.TTEN = ‘A’ AND DA.MADA = TH.MADA AND BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ NV.MANV = TH.MANV AND NS > ’12/31/1978’ (NHANVIEN X THUCHIEN X DUAN)) TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6262))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6262))6262
  • 63. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQHSỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD TENNV ∏ NV.TENNV ( (σDA.TTEN = ‘A’ AND DA.MADA = TH.MADA AND NV.MANV = TH.MANV AND NS > ’12/31/1978’ NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR DA.TEN=”A” AND DA.MADA=TH.MADA AND NV.MANV=TH.MANV AND AND NS > 12/31/1978 (NHANVIEN X THUCHIEN X DUAN)) HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NS>”12/31/1978” X Phép chọn NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH DUAN X Phép chiếu Quan hệ BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ THUCHIEN NHANVIEN Quan hệ Phép tíchx TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6363))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6363)) Cây biểu diễn biểu thức truy vấnPhép kết
  • 64. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD TENNV DA MADA= TENNV NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR X DA.MADA= TH.MADA DA.TEN=”A” AND DA.MADA=TH.MADA AND NV.MANV=TH.MANV AND HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA DA.TEN=”A”NV.MANV= TH.MANV NS>”12/31/1978” X NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH DUANX DUAN X BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ THUCHIEN NHANVIEN NS > ”12/31/1978” THUCHIEN NHANVIEN TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6464))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6464)) Đưa phép chọn xuống sâu các nhánh
  • 65. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH TENNV SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD TENNV NV.MANV= TH MANV NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR X TH.MANV HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA NS > ”12/31/1978” DA.MADA= TH.MADA NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH X NHANVIEN BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ THUCHIEN TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6565))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6565)) DUAN Áp dụng các phép chọn chặt chẽ trước
  • 66. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD TENNV NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR NV.MANV= TH.MANV HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA DA.MADA= TH.MADA NS > ”12/31/1978” NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH THUCHIEN NHANVIEN DA.TEN=”A” BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ DUAN Th thế á hé tí h D t à hé h TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6666))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6666)) DUAN Thay thế các phép tích Descartes và phép chọn bằng phép kết
  • 67. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH TENNV SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD TENNV NV.MANV= TH.MANV NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR MANV MANV, TEN HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA DA.MADA= TH.MADA NS > ”12/31/1978” NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH NHANVIEN MANV, MADA MADA BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ THUCHIENDA.TEN=”A” TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6767))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6767))6767 DUAN Di chuyển các phép chiếu xuống các nhánh
  • 68. UU DLDL Giải thuật heuristic cho tối ưu hóa biểu thức ĐSQH SỞDỮLiỆSỞDỮLiỆUU RÚCCSDRÚCCSD Ngôn ngữ ĐSQH ∏ (( NTRỊCƠSNTRỊCƠS CẤUTRCẤUTR ∏ NV.TENNV ((∏ MANV, TENNV(σNS > ’12/31/1978’ (NHANVIEN))) NHANVIEN MANV = THUCHIEN MANV HẦNQuẢNHẦNQuẢN HNGHĨAHNGHĨA (∏ MANV(∏MADA (σTENDA=‘A’(DUAN))) (∏MADA,MANV(THUCHIEN)) )) DUAN.MADA = THUCHIEN.MADA NHANVIEN,MANV = THUCHIEN.MANV NGNGHỌCPHHỌCPH NHĐỊNHNHĐỊNH BÀIGIẢNBÀIGIẢN CÂULỆCÂULỆ TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6868))TRẦN NGỌC BẢOTRẦN NGỌC BẢO KHOA TOÁNKHOA TOÁN --TIN HỌCTIN HỌC ĐẠI HỌC SƯ PHẠM TP.HCM (ĐẠI HỌC SƯ PHẠM TP.HCM (6868))6868