!∀#∃
%!∃&
Gii thiu
Phép tính quan h trên b
Phép tính quan h trên min
C s d liu - Khoa CNTT - H KHTN TPHCM 2
Là ngôn ng truy vn hình thc
Do Codd ngh vào nm 1972, “Data Base
Systems”, Prentice Hall, p33-98
C s d liu - Khoa CNTT - H KHTN TPHCM 3
c im
- Phi th tc
- Da vào lý thuyt logic tân t (v t) bc 1: xem mi
quan h là mt tân t bc 1
- Rút trích cái gì (what) ≠ rút trích nh th nào (how)
- Kh nng din t tng ng vi SQH
Có 2 loi
- Phép tính quan h trên b (Tuple Rational Calculus)
SQL
- Phép tính quan h trên min (Domain Rational Calculus)
QBE (Query By Example)
C s d liu - Khoa CNTT - H KHTN TPHCM 4
Gii thiu
Phép tính quan h trên b
Phép tính quan h trên min
C s d liu - Khoa CNTT - H KHTN TPHCM 5
Biu thc phép tính quan h trên b có dng
- t là bin b
Bin nhn giá tr là mt b ca quan h trong CSDL
t.A là giá tr ca thuc tính A trong b t
{ t.A | P(t) }
C s d liu - Khoa CNTT - H KHTN TPHCM 6
- P là công thc có liên quan n t
P(t) có giá tr ÚNG hoc SAI ph thuc vào t
- Kt qu tr v là tp giá tr ca thuc tính A trong các b t sao
cho P(t) úng
- Mi quan h Qi ca lc CSDL là mt v t; mi quan h
có mt bin qi tng ng; mi b thuc mt th hin ca
quan h Qi là mt tr ca bin qi
!∀#∃%&∋
C s d liu - Khoa CNTT - H KHTN TPHCM 7
(∋)
Tìm các nhân viên có lng trên 30000:
∧
∧∧
∧ !∀#∃∃∃∃%
& ∋
C s d liu - Khoa CNTT - H KHTN TPHCM 8
- NHANVIEN(t) úng
Nu t là mt b ca quan h NHANVIEN
- t.LUONG > 30000 úng
Nu thuc tính LUONG ca t có giá tr trên 30000
(∋∗
Cho bit mã và tên nhân viên có lng trên 30000
- Tìm nhng b t thuc NHANVIEN có thuc tính lng
ln hn 30000
- Ly ra các giá tr ti thuc tính MANV và TENNV
C s d liu - Khoa CNTT - H KHTN TPHCM 9
- Tp các MANV và TENNV ca nhng b t sao cho t là
mt b ca NHANVIEN và t có giá tr ln hn 30000 ti
thuc tính LUONG
!! ∧
∧∧
∧ !∀#∃∃∃∃%
(∋+
Cho bit các nhân viên (MANV) làm vic phòng
‘Nghien cuu’
(∈
∈∈
∈ ∧
∧∧
∧ (!=
==
= )∗+,−.//0%
! ∧
∧∧
∧
C s d liu - Khoa CNTT - H KHTN TPHCM 10
- Ly ra nhng b t ca quan h NHANVIEN
- So sánh t vi mt b s nào ó tìm ra nhng nhân
viên làm vic phòng ‘Nghien cuu’
- Cu trúc “tn ti” ca phép toán logic
∃
∃∃
∃∧
∧∧
∧
.1,&23(45+567832394:/4.+;+<4=>?=7=>?≅.∗
(∋+
Cho bit các nhân viên (MANV) làm vic phòng
‘Nghien cuu’
! ∧
∧∧
∧
∃
∃∃
∃
((
∧
∧∧
∧
C s d liu - Khoa CNTT - H KHTN TPHCM 11
∃
∃∃
∃
((
∧
∧∧
∧
(!=
==
= )∗+,−.//0∧
∧∧
∧
(!=
==
= !%
(∋,
Cho bit tên các nhân viên (TENNV) tham gia làm
án hoc có thân nhân
! ∧
∧∧
∧
∃
∃∃
∃
((
∧
∧∧
∧
!
=
==
=
(!
∨
∨∨
∨
C s d liu - Khoa CNTT - H KHTN TPHCM 12
∃
∃∃
∃
((
∧
∧∧
∧
!
=
==
=
(!
∨
∨∨
∨
∃
∃∃
∃//∧
∧∧
∧ !=
==
= /!%
(∋−
Cho bit tên các nhân viên (TENNV) va tham gia
làm án va có thân nhân
! ∧
∧∧
∧
∃
∃∃
∃
((
∧
∧∧
∧
!
=
==
=
(!
∧
∧∧
∧
C s d liu - Khoa CNTT - H KHTN TPHCM 13
∃
∃∃
∃
((
∧
∧∧
∧
!
=
==
=
(!
∧
∧∧
∧
∃
∃∃
∃//∧
∧∧
∧ !=
==
= /!%
(∋.
Cho bit tên các nhân viên (TENNV) tham gia làm
án mà không có thân nhân nào
! ∧
∧∧
∧
∃
∃∃
∃
((
∧
∧∧
∧
!
=
==
=
(!
∧
∧∧
∧
C s d liu - Khoa CNTT - H KHTN TPHCM 14
∃
∃∃
∃
((
∧
∧∧
∧
!
=
==
=
(!
∧
∧∧
∧
¬
¬¬
¬ ∃
∃∃
∃//∧
∧∧
∧ !=
==
= /!%
(∋/
Vi mi án ‘TP HCM’ cho bit mã án, mã
phòng ban ch trì và tên ngi trng phòng
(!(!! (∧
∧∧
∧ ∧
∧∧
∧
(!
=
==
=
)0
∧
∧∧
∧
C s d liu - Khoa CNTT - H KHTN TPHCM 15
(!
=
==
=
)0
∧
∧∧
∧
∃
∃∃
∃//∧
∧∧
∧ (!=
==
= /!∧
∧∧
∧
/!=
==
= !%
(∋0
Tìm các nhân viên (MA_NVIEN) tham gia vào tt c
các án
- Cu trúc “vi mi” ca phép toán logic
∀
∀∀
∀
∧
∧∧
∧
C s d liu - Khoa CNTT - H KHTN TPHCM 16
∀
∀∀
∀
∧
∧∧
∧
>?≅.∗=Α,8Β,23+/3:/4.
+;
(∋0
Tìm các nhân viên (MANV, HONV, TENNV) tham
gia vào tt c các án
!!! ∧
∧∧
∧
∀
∀∀
∀
((
∧
∧∧
∧
∃
∃∃
∃
//
∧
∧∧
∧
C s d liu - Khoa CNTT - H KHTN TPHCM 17
∀
∀∀
∀
((
∧
∧∧
∧
∃
∃∃
∃
//
∧
∧∧
∧
/!=
==
= (!∧
∧∧
∧
!=
==
= /!%
12345
Mt công thc truy vn tng quát có dng
-
t
1
,
t
2
,
…
,
t
n
là
cá
c
bin
b
{ t
1
.A
i
, t
2
.A
j
, …t
n
.A
k
| P(t
1
, t
2
, …, t
n
) }
C s d liu - Khoa CNTT - H KHTN TPHCM 18
-
t
1
,
t
2
,
…
,
t
n
là
cá
c
bin
b
- A
i
, A
j
, …, A
k
là các thuc tính trong các b t tng ng
- P là công thc
P c hình thành t nhng công thc nguyên t
6
Bin t do (free variable)
∧
∧∧
∧ !∀#∃∃∃∃%
672,Χ.∆Ε5
C s d liu - Khoa CNTT - H KHTN TPHCM 19
Bin kt buc (bound variable)
∧
∧∧
∧ ∃
∃∃
∃((∧
∧∧
∧ (!=
==
= !%
,Χ.ΦΧ2/3
,Χ.∆Ε5
7589
(i)
- t là bin b
- R là quan h
(ii)
-
A
là
thuc
tính
ca
bin
b
t
R(t)
t.A θ s.B
!Γ(!
C s d liu - Khoa CNTT - H KHTN TPHCM 20
-
A
là
thuc
tính
ca
bin
b
t
- B là thuc tính ca bin b s
- θ là các phép so sánh <
<<
< , >
>>
> , ≤
≤≤
≤ , ≥
≥≥
≥ , ≠
≠≠
≠ , =
==
=
(iii)
- c là h!ng s
- A là thuc tính ca bin b t
- θ là các phép so sánh <
<<
< , >
>>
> , ≤
≤≤
≤ , ≥
≥≥
≥ , ≠
≠≠
≠ , =
==
=
t.A θ c
!Γ(!
(!∀#∃∃∃∃
7589
Mi công thc nguyên t u mang giá tr ÚNG
hoc SAI
- Gi là chân tr ca công thc nguyên t
Công
thc
(i)
C s d liu - Khoa CNTT - H KHTN TPHCM 21
Công
thc
(i)
- Chân tr ÚNG nu t là mt b thuc R
- Chân tr SAI nu t không thuc R
α
∋
α
&∃
∋∃
&
&
&ΓΗα&∃&∀
∋ΓΗα∋∃∋∀
&Ι+ϑ.Κ>ΛΜ
∋Ι+ϑ.Κ>
7589
Công thc (ii) và (iii)
- Chân tr tùy thuc vào vic thay th giá tr tht s ca b
vào v trí bin b
∋
Χ/6723Η
α
&∃
&
∀
C s d liu - Khoa CNTT - H KHTN TPHCM 22
α
α
&∃
∋∃
&
&
Χ/6723Η
α
&∃
&
∀
+Ν!∀ΟΙ+ϑ.Κ>ΛΜ&∃∀Ο
:;
(1) Mi công thc nguyên t là công thc
(2) Nu là công thc thì
- ¬ là công thc
-
là
công
thc
C s d liu - Khoa CNTT - H KHTN TPHCM 23
-
là
công
thc
(3) Nu & và ∋ là các công thc thì
- & ∨ ∋ là công thc
- & ∧ ∋ là công thc
- & ∋ là công thc
:;
(4) Nu là công thc thì
- ∀
∀∀
∀ ∧
∧∧
∧ là công thc
Chân tr ÚNG khi P(t) ÚNG vi mi b t trong R
Chân tr SAI khi có ít nht 1 b làm cho P(t) SAI
-
∃
∃∃
∃
∧
∧∧
∧
là
công
thc
C s d liu - Khoa CNTT - H KHTN TPHCM 24
-
∃
∃∃
∃
∧
∧∧
∧
là
công
thc
Chân tr ÚNG khi có ít nht 1 b làm cho P(t) ÚNG
Chân tr SAI khi P(t) SAI vi mi b t trong R
:;
(5) Nu 67 Π.∗ +Θ .∗/ΡΣ. Τ +Ν
- Các bin b t trong P là bin t do
(6) Công thc Γ&∧
∧∧
∧∋ , Γ&∨
∨∨
∨∋ , Γ&
∋
-
S
xut
hin
ca
bin
t
trong
P
là
t
do
hay
kt
buc
C s d liu - Khoa CNTT - H KHTN TPHCM 25
-
S
xut
hin
ca
bin
t
trong
P
là
t
do
hay
kt
buc
ph thuc vào vic nó là t do hay kt buc trong & ∋