1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Chương 2 CƠ SỞ DỮ LIỆU QUAN HỆ

13 3 0

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Cơ Sở Dữ Liệu Quan Hệ
Định dạng
Số trang 13
Dung lượng 452,51 KB

Nội dung

Khoá chính primary key, Khoá dựtuyển candidate key.12/12/1985Lê Phương Bắc200510033/3/1985Lê Phương Bắc200510022/2/1986Trần Mai Ly200510011/1/1985Nguyễn Hải Nam2005100012/12/1985Lê Ngọc

Trang 1

Chương 2

CƠ SỞ DỮ LIỆU QUAN HỆ

Relational Theory

Data Model Algebra

Relational Theory

Data Model Algebra

SQL

NỘI DUNG

Mô hình d ữ li ệ u quan h ệ

Khái niệm

Khoá của quan hệ

Ràng buộc quan hệ

Đạ i s ố quan h ệ

Ngôn ng ữ v ấ n tin SQL

Relational Database [Codd, 1970]

D ữ li ệ u l ư u tr ữ trong b ả ng hai chi ề u

M ỗ i b ả ng có tên duy nh ấ t

M ỗ i c ộ t có tên duy nh ấ t trong m ộ t b ả ng

M ỗ i giá tr ị trên m ộ t c ộ t thu ộ c cùng m ộ t mi ề n

Th ứ t ự các hàng trong b ả ng không quan tr ọ ng

Th ứ t ự các c ộ t trong b ả ng không quan tr ọ ng

M ỗ i giá tr ị trên c ộ t là nguyên t ố

Ví d ụ : Quan h ệ SV

3/3/1985

Lê Ph ươ ng B ắ c 20051002

2/2/1986

Tr ầ n Mai Ly 20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MSV

Trang 2

MÔ HÌNH DỮ LIỆU QUAN HỆ

Thu ậ t ng ữ

Người dùng Lý thuyết

C ấ p

S ố c ộ t trong b ả ng

L ự c l ượ ng

S ố hàng trong b ả ng

Mi ề n

T ậ p giá tr ị h ợ p l ệ

Thu ộ c tính

C ộ t hay Tr ườ ng

B ộ Hàng ho ặ c B ả n ghi

Quan h ệ

B ả ng

Mi ề n (Domain): T ậ p các giá tr ị nguyên t ố

Thu ộ c tính (Attribute): M ộ t thu ộ c tính A g ồ m:

tên thu ộ c tính

mi ề n tr ị , dom(A), h ữ u h ạ n ho ặ c vô h ạ n, ||dom(A)|| 2

Tích Đề -các:

D1××××D2 ××××××××Dn = {(v1, v2,…,vn)| vi Di}

Ví d ụ : D1 = {0,1}; D2 = {a,b,c}

D1 ××××D2 = {(0,a), (0,b), (0,c), (1,a), (1,b), (1,c)}

D1 = {‘Lan’, ‘Mai’, ‘Cúc’}; D2 = {‘nam’, ‘nu’}; D3 = {19, 20}

D1 ××××D2 ××××D3 = {(‘Lan’,’nam’,19), (‘Lan’, ‘nam’, 20),

(‘Lan’,’nu’, 19),…….

Quan h ệ :

U = {A1, A2, …, An } - t ậ p h ữ u h ạ n các thu ộ c tính,

Quan h ệ R trên t ậ p thu ộ c tính U là:

R dom(A1) ××××dom(A2) ××××××××dom(An)

Kí hi ệ u: R(U) hay R(A1, A2, …, An) hay R trong tr ườ ng h ợ p

ng ầ m đị nh.

Ví d ụ : Quan h ệ SV(MSV, HOTEN, NS)

- Tên quan h ệ : SV

- T ậ p thu ộ ctính: {MSV, HOTEN, NS}

- Mi ề n tr ị : dom(MSV): char(7)

dom(HOTEN): char(30) dom(NS): date

Th ể hi ệ n (tr ạ ng thái) c ủ a Quan h ệ

M ộ t b ộ c ủ a quan h ệ :

t =<’20051000’,’Nguyễn Hải Nam’, ’1/1/1985’>, và t ∈SV

C ơ s ở d ữ li ệ u quan h ệ là t ậ p các quan h ệ đượ c bi ế n thiên theo thời gian.

2/2/1986

Tr ầ n Mai Ly 20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

3/3/1986

Lê Ph ươ ng B ắ c 20051002

NS HOTEN

MSV

c ác bộ của quan hệ SV

Trang 3

MÔ HÌNH DỮ LIỆU QUAN HỆ

Quy ướ c

Tên quan h ệ là các ch ữ cái in hoa, ở cu ố i b ả ng, nh ư R, S, T,

Các b ộ đượ c kí hi ệ u b ở i ch ữ th ườ ng, ở cu ố i b ả ng, nh ư u, v, t

Các thu ộ c tính đượ c kí hi ệ u b ở i ch ữ in hoa, ở đầ u b ả ng, nh ư

A, B, C, và vi ế t ABC thay cho {A, B, C}

T ậ p các thu ộ c tính đượ c kí hi ệ u b ở i ch ữ in hoa, ở cu ố i b ả ng,

nh ư U, V, X, Y, Z, và vi ế t XY thay cho XY

Kí hi ệ u t.X là h ạ n ch ế c ủ a b ộ t trên t ậ p thu ộ c tính X

t =<’200510000’,’Nguy ễ n H ả i Nam’, ’1/1/1985’>, và t SV

X = {MSV, HOTEN}

t.X = <’200510000’,’Nguy ễ n H ả i Nam’>

KHOÁ CỦA QUAN HỆ

Khoá (key)

Cho quan h ệ R(U), K U, K là khoá c ủ a quan h ệ R n ế u: (i) v ớ it,sR, t ≠ s: t.K ≠ s.K

(ii) !∃∃∃∃K’K mà K’ tho ả (i).

N ế u K ch ỉ tho ả (i), K đượ c g ọ i là siêu khoá (super key).

M ộ t quan h ệ có th ể có m ộ t hay nhi ề u khoá

Khoá chính (primary key), Khoá d ự tuy ể n (candidate key).

12/12/1985

Lê Phương Bắc 20051003

3/3/1985

Lê Phương Bắc 20051002

2/2/1986

Trần Mai Ly 20051001

1/1/1985 Nguyễn Hải Nam

20051000

12/12/1985

Lê Ngọc Lam 20051002

NS HOTEN

MASV Quan hệ SV

Khoá của SV??

Có thể bổ sung

bộ này vào SV

???

Ví d ụ , cho quan h ệ SVHT:

Có th ể b ổ sung vào SVHT b ộ t = <“20051000”,….,”m1”,…, 2> ?

Xác đị nh khoá c ủ a quan h ệ SVHT

Nếu giảthiết, các môn khác nhau phải có tên khác nhau ?

Nếu giảthiết có thểcó hai môn giống tên nhau ?

KHOÁ CỦA QUAN HỆ

4 3 1 Giải tích 1 m2

2-2-85 Trần Mai Ly

20051001

8 4 1

Đại số

m1 2-2-85 Trần Mai Ly

20051001

5 4 2 Giải tích 2 m3

1-1-85 Nguyễn Hải Nam

20051000

7 3 1 Giải tích 1 m2

1-1-85 Nguyễn Hải Nam

20051000

5 4 1

Đại số

m1 1-1-85 Nguyễn Hải Nam

20051000

DIEM SOTC HK TENHP MAHP

NS HOTEN

MASV

RÀNG BUỘC QUAN HỆ

Ràng bu ộ c mi ề n Ràng bu ộ c NULL Ràng bu ộ c khoá

Ràng bu ộ c khoá chính Ràng bu ộ c duy nh ấ t

Ràng bu ộ c toàn v ẹ n tham chi ế u

d ự a trên khoá ngo ạ i lai (foreign key)

Trang 4

Ví dụ cơ sở dữ liệu quan hệ

3/3/1985

Lê Ph ươ ng B ắ c 20051002

2/2/1986

Tr ầ n Mai Ly 20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

4

C ơ s ở d ữ li ệ u M3

3 Toán r ờ i r ạ c M2

4 Anh v ă n

M1

SOTC TENHP

MAHP

7 M2

20051001

4 M1

20051000

6 M2

20051000

5 M1

20051001

DIEM MAHP

MASV

Quan h ệ HP

Ràng bu ộ c d ữ li ệ u

Tình hu ố ng 1 Ràng bu ộ c mi ề n

Tình hu ố ng 2 Ràng bu ộ c NULL

4

C ơ s ở d ữ li ệ u M3

3 Toán r ờ i r ạ c

M2

aa Anh v ă n

M1

SOTC TENHP

MAHP

3/3/1985

Lê Ph ươ ng B ắ c 20051002

2/2/1986 20051001

Nguy ễ n H ả i Nam 20051000

NS HOTEN

MASV

Ràng bu ộ c d ữ li ệ u

Tình hu ố ng 3

Ràng bu ộ c khoá chính

Tình hu ố ng 2

Ràng bu ộ c khoá duy nh ấ t

4

C ơ s ở d ữ li ệ u

3 Toán r ờ i r ạ c M1

4 Anh v ă n

M1

SOTC TENHP

MAHP

4

C ơ s ở d ữ li ệ u M3

3 Anh v ă n

M2

4 Anh v ă n

M1

SOTC TENHP

MAHP

Không chấp nhận

• Tình hu ố ng 4 Ràng bu ộ c toàn v ẹ n tham chi ế u

Ràng bu ộ c d ữ li ệ u

3/3/1985

Lê Ph ươ ng B ắ c 20051002

2/2/1986

Tr ầ n Mai Ly 20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

4

C ơ s ở d ữ li ệ u M3

3 Toán r ờ i r ạ c M2

4 Anh v ă n

M1

SOTC TENHP

MAHP

6 M1

20051001

7 M2

20051001

4 M1

20051000

6 M2

20051000

5 M4

20051004

DIEM MAHP

MASV

Khoá ngo ạ i lai

? ? ?

SV

HP

KQHT

Trang 5

ĐẠI SỐ QUAN HỆ

Th ế nào là “ Đạ i s ố ” ?

Hệtoán học, bao gồm:

Toán t ử /Phép toán ( Operators) - kí pháp mô tảthủtụcđểcho ra

kết quảtừcác giá trịvào cho trước

Toán h ạ ng (Operands) - biến/giá trịmà toán tửthao tác và cho ra

kết quả

Đạ i s ố quan h ệ

Hệ đại số, toán hạng là các quan hệ

Toán tử được thiết kế đểthực hiện những thao tác thường gặp

nhấtđối với quan hệtrong CSDL

Kết quảlà một hệ đại sốmà có thể được sửdụng nhưmột ngôn ngữ

vấn tin trên các quan hệ

Các phép toán quan h ệ c ơ b

Phép hợp Phép giao Phép hiệu Tíchđềcác Phép chọn Phép chiếu Phép kết nối Phép chia

***Phépđổi tên quan hệ/tên thuộc tính

Các phép tính quan h ệ : H ợ p, Giao, Hi ệ u, Tích Đề các,

Ch ọ n, Chi ế u, K ế t n ố i, Chia

Các toán h ạ ng: Các quan h

Bi ể u th ứ c quan h ệ

Toán tử: là các phép toán quan hệ

Toán hạng: là các quan hệ

Kết quả: là một quan hệ

Phép h ợ p (Union)

Cho hai quan h ệ R(U), S(U) (R và S t ươ ng thích) Phép h ợ p hai quan h ệ R và S là m ộ t quan h ệ trên U:

Phép giao (Intersection)

Cho hai quan h ệ R(U), S(U) (R và S t ươ ng thích) Phép giao hai quan h ệ R và S là m ộ t quan h ệ trên U:

S

R ∪ = | ∈ ∨ ∈

S

Trang 6

ĐẠI SỐ QUAN HỆ

Phép tr ừ (Set difference)

Cho hai quan h ệ R(U), S(U) (R và S t ươ ng thích)

Phép tr ừ quan h ệ R cho quan h ệ S là m ộ t quan h ệ U:

Tích đề các (Catersian Product)

Cho U = {A1,A2,…An}, V = {B1,B2,…Bm}; Quan h ệ R(U), S(V)

Tích đề các hai quan h ệ R và S là:

S

{ t a a a b b b a a a R b b b S }

S

R × = = ( 1, 2, , n, 1, 2, ,n) | ( 1, 2, , n) ∈ , ( 1, 2, ,n) ∈

Phép ch ọ n (Selection)

Cho quan hệ R(U), E là biểu thức chọn trên U Phép chọn quan hệ R theo điều kiện E cho một quan hệ trên U:

t(E):b ộ t tho ả E Phép chi ế u (Projection)

Cho quan h ệ R(U), X U Phép chi ế u quan h ệ R trên t ậ p thuộc tính X là một quan hệ trên X:

CÁC PHÉP TOÁN QUAN HỆ

)

σ

{ t X t R }

R

CÁC PHÉP TOÁN QUAN HỆ

3/3/1985

Lê Ph ươ ng B ắ c

20051002

2/2/1986

Tr ầ n Mai Ly

20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

Lê Ph ươ ng B ắ c 20051002

Tr ầ n Mai Ly 20051001

Nguy ễ n H ả i Nam 20051000

HOTEN MASV

Quan hệ R2

Quan hệ R1

Quan hệ SV

) (

'

R 1 = σ MASV = 20051000

) (

R 2 = ∏ MASV HOTEN

CÁC PHÉP TOÁN QUAN HỆ

3/3/1985

Lê Ph ươ ng B ắ c 20051002

2/2/1986

Tr ầ n Mai Ly 20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

Nguy ễ n H ả i Nam 20051000

HOTEN MASV

Quan hệ SV

Quan hệ R3

)) (

R 3 = ∏ MASV HOTEN σ MASV = 20051000

Trang 7

CÁC PHÉP TOÁN QUAN HỆ

PHÉP K Ế T N Ố I

R4 = SV KQHT

3/3/1985

Lê Ph ươ ng B ắ c

20051002

2/2/1986

Tr ầ n Mai Ly

20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

7

M2 20051001

4

M1 20051000

6

M2 20051000

DIEM MAHP

MASV

7 M2

2/2/1986

Tr ầ n Mai Ly

20051001

6 M2

1/1/1985 Nguy ễ n H ả i Nam

20051000

4 M1

1/1/1985 Nguy ễ n H ả i Nam

20051000

DIEM MAHP

NS HOTEN

MASV

Quan hệ R4

CÁC PHÉP TOÁN QUAN HỆ

Phép k ế t n ố i (Join) Phép k ế t n ố iθθθθ(Theta−Joins)

Cho R(U), S(V) A U, B V, dom(A) và dom (B) có cùng ki ể u so sánh đượ c

θθθθ - phép tính so sánh.

Phép k ế t n ố iθθθθhai quan h ệ R và S:

R A θθθθBS = {<u,v>| u R, v S, u.A θθθθ v.B}

Kí hiệu <u, v>: một bộ được tạo ra nhờsựxếp bộv cạnh bộu

K ế t n ố i t ự nhiên 2 quan h ệ R và S, kí hi ệ u RS, là k ế t n ố i b ằ ng trên hai thu ộ c tính cùng tên, sau đ ó lo ạ i b ớ t đ i nh ữ ng thu ộ c tính cùng tên, ch ỉ gi ữ l ạ i m ộ t đạ i di ệ n.

R⋈S l à quan h ệ trên t ậ p thu ộ c tính U V

M ộ t b ộ thu ộ c RS t ạ o nên b ở i b ộ u R, v S, đượ c g ọ i là “b ộ n ố i đượ c” (joined tuple)

CÁC PHÉP TOÁN QUAN HỆ

3/3/1985

Lê Ph ươ ng B ắ c

20051002

2/2/1986

Tr ầ n Mai Ly

20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

7

M2 20051001

4

M1 20051000

6

M2 20051000

DIEM MAHP

MASV

7 M2

2/2/1986

Tr ầ n Mai Ly

20051001

6 M2

1/1/1985 Nguy ễ n H ả i Nam

20051000

DIEM MAHP

NS HOTEN

MASV

Quan hệ R5

KQHT)

( ' ' SV

CÁC PHÉP TOÁN QUAN HỆ

3/3/1985

Lê Ph ươ ng B ắ c

20051002

2/2/1986

Tr ầ n Mai Ly

20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

7

M2 20051001

4

M1 20051000

6

M2 20051000

DIEM MAHP

MASV

7

Tr ầ n Mai Ly 20051001

6 Nguy ễ n H ả i Nam

20051000

DIEM HOTEN

MASV

Quan hệ R6

KQHT))

(

,

R 6 = ∏ MASV HOTEN DIEM σ MAHP = M 2

Trang 8

CÁC PHÉP TOÁN QUAN HỆ

R8 = SV NS >NS R7

3/3/1985

Lê Ph ươ ng B ắ c

20051002

2/2/1986

Tr ầ n Mai Ly

20051001

1/1/1985 Nguy ễ n H ả i Nam

20051000

NS HOTEN

MASV

3/3/1985 NS

3/3/1985

R7.NS 2/2/1986

Tr ầ n Mai Ly

20051001

SV.NS HOTEN

MASV

Quan hệ R8

Quan hệ R7

)) (

R 7 = ∏ NS σ MASV = 20051002

CÁC PHÉP TOÁN QUAN HỆ

Phép chia (Quotient)

Cho R(U) và S(V), θ ≠ V U, X = U - V.

Phép chia quan hệ R cho S, kí hiệu R ÷ S, là một quan hệ trên X:

R ÷÷÷÷ S = {t.X | t R: v S, <t.X,v> R}

Th ự c hi ệ n phép toán:

Tính

Với mỗi t ∈ , nếu∀v ∈S đều thỏa mãn <t,v> ∈R thì t ∈R ÷S

X(R )

X(R )

CÁC PHÉP TOÁN QUAN HỆ

T = R ÷÷÷÷ S

R ( HOTEN, NGOAINGU) S (NGOAINGU)

Lan Pháp Anh

Mai Anh Pháp

Lan Anh Nga

Lan Nga

Hue Nga

Lan

HOTEN

Quan hệ T

Mai

Lan

Hu ệ

HOTEN

Quan hệ R[HOTEN]

Phép đổ i tên quan h ệ

Đổi tên quan hệR thành quan hệS(A1, A2, …, An)

) (

) , ,

,

n

A A

A

ρ

Quan hệkết quảcó các bộgiống các bộcủa R, nhưng tên quan hệlà S

Có thể đổi tên thuộc tính

Nếu chỉ đổi tên quan hệ:

)

( R S

ρ

Trang 9

Tìm kiếm bằng đại số quan hệ

Bi ể u th ứ c quan h ệ

Toán hạng là các quan hệ

Toán tửlà các phép toán quan hệ

Kết quảlà một quan hệ

Th ứ t ự ư u tiên

Phép toán trong ( ) có thứtự ưu tiên cao hơn

Đối với phép toán cùng ngôi, thứtự ưu tiên là từtrái sang phải

Phép toán một ngôi có thứtự ưu tiên cao hơn phép toán hai ngôi

Tìm ki ế m b ằ ng đạ i s ố quan h ệ

Ví d ụ

Cho CSDL g ồ m 3 quan h ệ ch ứ a d ữ li ệ u v ề sinh viên c ủ a

m ộ t khoa

SV (MASV, HOTEN, NS, GT, QUE, LOP)

HP (MAHP, TENHP, SOTC) KQHT (MASV, MAHP, DIEM)

Quan h ệ SV

Quan h ệ KQHT Quan h ệ HP

Ví d ụ m ộ t tr ạ ng thái c ủ a CSDL

3/3/1985 2/2/1986 1/1/1985 NS

Nam

N ữ

Nam GT

Nam Hà

Hà T ây

Hà N ộ i QUE

Toán 2

Lê Ph ươ ng B ắ c 20051002

Toán 1

Tr ầ n Mai Ly 20051001

Toán 1 Nguy ễ n H ả i Nam

20051000

LOP HOTEN

MASV

4

M ạ ng MT M3

3 Toán r ờ i r ạ c M2

4

C ơ s ở d ữ li ệ u M1

SOTC TENHP

MAHP

7 M2

20051001

4 M1

20051000

6 M1

20051001

5 M3

20051001

DIEM MAHP

MASV

Cho bi ế t mã s ố và h ọ tên nh ữ ng sinh viên l ớ p ‘Toán 1’

)) (

, HOTEN LOP Toan SV

Cho bi ế t mã s ố và h ọ tên nh ữ ng sinh viên l ớ p ‘Toán 1’, quê ở Hà N ộ i

Trang 10

Cho bi ế t mã s ố và h ọ tên nh ữ ng sinh viên l ớ p ‘Toán 1’

đ ã có đ i ể m h ọ c ph ầ n ‘M1’

Cho bi ế t mã s ố và h ọ tên nh ữ ng sinh viên l ớ p ‘Toán 1’

không có đ i ể m h ọ c ph ầ n ‘M1’

ho ặ c vi ế t:

KQHT))

(

R = ∏ MASV HOTEN σ MAHP = M 1LOP = Toan 1

R SV

Toan LOP

HOTEN

∏ , ( σ ' 1 ' ( ))

2 1

2

1

1

1 1

R R

ANSWER

SV R

KQHT SV

R

Toan LOP HOTEN

MASV

M MAHP MASV

Toan LOP MASV

><

=

=

=

=

=

=

)) ( (

)) (

( ))

( (

' ' ,

' ' '

'

σ

QUAN HỆ

Cho bi ế t mã s ố và h ọ tên nh ữ ng sinh viên l ớ p ‘Toán 1’

có đ i ể m h ọ c ph ầ n ‘M1’ l ớ n h ơ n ho ặ c b ằ ng 4.

2 1

2

1

4 1

1

R R

ANSWER R

SV R

DIEM M

MAHP MASV

Toan LOP

HOTEN MASV

><

=

=

=

=

=

)) ( (

' '

' ' ,

σ

σ

Các cách biểu diễn khác?

TÌM KI Ế M B Ằ NG ĐẠ I S Ố QUAN H Ệ

Cho bi ế t mã s ố và h ọ tên nh ữ ng sinh viên l ớ p ‘Toán 1’

có đ i ể m h ọ c ph ầ n ‘C ơ s ở d ữ li ệ u’ l ớ n h ơ n ho ặ c b ằ ng 4.

)) (

1

4

ANSWER

HP KQHT

SV R

DIEM lieu

du so Co TENHP Toan

LOP HOTEN

=

=

σ

><

><

Thay đổi thứ tự phép kết nối?

Các cách biểu diễn khác?

Cho bi ế t mã s ố sinh viên có đ i ể m < 4 ở c ả hai h ọ c ph ầ n mã

s ố M1 và M2

? Cách biểu diễn sau đúng hay sai?

ANSWER MA σ DIEM 4 MAHP M 1 MAHP M 2

R2 R1

SWER

)) (

(

)) (

(

' ' SV

' ' SV

><

=

=

=

=

<

=

<

AN

KQHT R

KQHT R

M MAHP DIEM

MA

M MAHP DIEM

MA

2 4

1 4

2

1

σ σ

Hoặc: ANSWER = R1 ∩∩∩ R2R2

Trang 11

TÌM KI Ế M B Ằ NG ĐẠ I S Ố QUAN H Ệ

Cho bi ế t danh sách mã s ố và h ọ tên nh ữ ng sinh viên l ớ p

Toán 1 và Toán 2 có đ i ể m h ọ c ph ầ n CSDL < 4

Cách bi ể u di ễ n khác:

)) ( ( ( ' ' ' ') ' '

1

4 2

ANS

HP KQHT

SV

R

CSDL TENHP DIEM

Toan LOP Toan LOP HOTEN

MASV

∏ = ∨ = ∧ < ∧ =

=

=

σ

><

><

R2 R1

ANSWER

)) (

(

)) ( (

' ' SV

' '

' ' HOTEN

SV,

><

><

=

=

=

=

=

KQHT HP

R

SV R

CSDL TENHP

DIEM MA

Toan LOP

Toan LOP

MA

4

2 1

2

1

σ

σ

Cách bi ể u di ễ n khác? ………

TỐI ƯU HOÁ BIỂU THỨC QUAN HỆ

T ố i ư u hóa là ph ươ ng pháp thay m ộ t bi ể u th ứ c quan h ệ

b ằ ng m ộ t bi ể u th ứ c t ươ ng đươ ng đơ n gi ả n h ơ n, th ờ i gian th ự c hi ệ n nhanh h ơ n mà k ế t qu ả không đổ i.

Nh ậ n xét

Đối với quan hệnhỏ, việc tính toán nhanh hơn, sửdụng ít

bộnhớhơn Phép toán làm quan hệnhỏ đi: chọn, trừ, giao, chiếu, chia Phép toán làm quan hệlớn hơn: kết nối, hợp, tíchĐềcác

TỐI ƯU HOÁ BIỂU THỨC QUAN HỆ

Chi ế n l ượ c t ố i ư u hoá

Thực hiện các phép toán làm quan hệnhỏ đi càng sớm càng

tốt

Thực hiện các phép toán làm quan hệlớn hơn càng vềsau

càng tốt

Ví d ụ

Cho biết danh sách mã sốvà họtên những sinh viên lớp Toán

1 và Toán 2 thi khôngđạt (điểm < 4) học phần CSDL

TỐI ƯU HOÁ BIỂU THỨC QUAN HỆ

Bi ể u th ứ c quan h ệ bi ể u di ễ n câu h ỏ i trên là:

E = ( (LOP = ‘Toán 1’∨LOP = ‘Toán 2’) ∧DIEM < 4

∧TENHP = ‘CSDL’)

= E1 ∧E2 ∧E3 Trongđó:

E1 = (LOP = ‘Toán 1’∨LOP = ‘Toán 2’) E2 = (DIEM < 4)

E3 = (TENHP = ‘CSDL’)

MASV , HOTEN ( σ E ( SV >< KQHT >< HP ))

Trang 12

TỐI ƯU HOÁ BIỂU THỨC QUAN HỆ

Cây bi ể u th ứ c quan h ệ

Các nút trong là các toán tử

Các nút lá là các quan hệ

Cây con là một biểu thức con

MASV , HOTEN ( σ E ( SV >< KQHT >< HP ))

MASV , HOTEN

E

σ

HP

Bi ể u th ứ c quan h ệ t ố i ư u?

Phép toán t ổ ng g ộ p (Aggregation Operators)

SUM

AVG

MIN và MAX

COUNT

Phép nhóm (Grouping Operator)

Phép s ắ p x ế p (Sorting Operator)

Phép k ế t n ố i ngoài (Outer Join)

Phép nhóm (Grouping Operator)

Phân hoạch các bộcủa R thành các nhóm

Tất cảcác bộtrong một nhóm có giá trịgiống nhau trên danh sách các thuộc tính L= { A1, A2, …, Ak}(các thuộc tính này gọi là “thuộc tính nhóm” − grouping attribute)

Đối với mỗi nhóm, tạo ra một bộbởi:

Giá trịtrên thuộc tính nhóm của các bộtrong nhóm Hàm tổng gộp, đựơc tính toán trên các thuộc tính tổng gộp − aggregated attribute (thuộc danh sách L) của tất cảcác bộthuộc nhómđó

) (

, ,

k

A A

A 1 2

γ

Ngày đăng: 25/01/2024, 18:22

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w