Beruflich Dokumente
Kultur Dokumente
algebra)
,
SQL
ZY,
(
)
(project, unary)
(select, unary)
(cartesian product, binary)
(union, binary)
(set-difference, binary)
(rename, unary)
.
,
.
(set-intersection),
(natural join), (division),
(assignment), (generalized
projection),
(Aggregate functions),
(outer join)
() .
().
1,2,, k(r)
1, 2 r
.
()
.
,(R)
10
20
30
40
SQL:
SELECT DISTINCT , FROM R
.
()
: p(r)
:
-= ()
6
=^>5 (r)
12
23
10
23
10
SQL:
SELECT DISTINCT ,
FROM R
WHERE = AND >5
x
: r s, r n
s m .
rxs n x m .
r, s:
r x s
10
10
20
10
10
10
20
10
10
10
20
10
SQL:
SELECT * FROM R, S
8
: r s
:
r s = {t | t r t s}
r s:
1. r, s
()
2.
(.., 2 r
s)
..
() ()
-
r
A
B
1
2
1
r s:
B
2
3
B
1
2
1
3
SQL:
(SELECT , FROM R)
UNION
(SELECT , FROM S)
10
r-s
:
r-s = {t|tr ts}
.
R - S:
SQL2:
(SELECT , FROM R) EXCEPT (SELECT , FROM S)
SQL1:
(SELECT , FROM R) MINUS (SELECT , FROM S)
11
.. A=(r x s)
rxs
A=(r x s)
10
10
20
10
10
10
20
10
10
20
10
12
().
,
,
:
x(r)
r
SQL:
SELECT * FROM R AS X
n,
(1, 2, , n)(r)
r ,
1, 2, ,
n.
SQL:
SELECT * FROM R AS X(1, 2, , n)
13
( Database Systems Concepts
Silberschatz, Korth Sudarshan).
(-, , )
(-, -, )
(-, -, )
(-, -)
(-, , )
(-, -)
14
1200.
> 1200 ()
1200.
-(>1200())
, ,
-()
-()
.
-()
-()
15
- (-=""
(.-=.-
( x )))
.
- (- =""
(.-=.-
( x )))
-()
-(-=""
(.-=.-
( x ) ) )
16
()
.(. < d.
( x d() ) )
SQL :
( SELECT DISTINCT .,
FROM )
EXCEPT
( SELECT DISTINCT .,
FROM , AS d
WHERE . < d. )
17
:
o
o
1 2
.
:
o
o
o
o
1 2
1 2
1 x 2
(1), P
1
o s(1), S
1.
o (1), x
1
18
,
.
(set-intersection),
(natural join),
(division),
(assignment),
(generalized projection),
(Aggregate functions),
(outer join)
19
: r s
:
r s = {t | t r t s}
r s.
1. r, s
()
2.
: r s = r - (r - s)
r
r, s:
r s:
SQL:
(SELECT , FROM r) INTERSECT
(SELECT , FROM s)
20
: r
s
()
.
(r x s)
.
.
:
R = (, , , )
S = (, , )
(, , , , )
r
s :
r, s:
SQL:
SELECT r., r., r., r., s.
FROM r,s
WHERE r.= s. AND r.= s.
INNER JOIN FROM
SELECT r., r., r., r., s.
FROM r INNER JOIN s ON r.= s. AND r.= s.
22
r s
.
r s R S
,
R = (A1, , Am, B1, , Bn)
S = (B1, , Bn)
r s
R S = (A1, , Am)
r s = {t | t R-S (r) u s (tu r)}
..
( ).
-,-
(
- (- =
())
23
r
r s:
r s:
r
r s:
a
a
a
a
a
a
a
a
a
a
b
a
b
a
b
b
1
1
1
1
3
1
1
1
a
b
1
1
r s:
a 24
SQL
NOT EXISTS
true
r
r s:
r s:
SQL:
SELECT DISTINCT d.
FROM r AS d
WHERE NOT EXISTS ( ( SELECT B FROM s )
EXCEPT
( SELECT r.B FROM r
WHERE r.A = d.A ) )
d.A
25
( )
.
.
()
.
: r s
26
.
F1, F2, , Fn(E)
E
F1, F2, , Fn
.
(_,
, _),
:
_, -_()
SQL:
SELECT _, - _
FROM
27
.
avg:
min:
max:
sum:
count:
:
G1, G2, , Gn g F1(A1), F2(A2), , Fn(An)
(E)
G1, G2, , Gn
()
Fi
i
28
g ()(r)
10
-
27
SQL:
SELECT sum() FROM r
29
-
-
- -
P e rryridge
A-102
P e rryridge
A-201
Brighton
A-217
Brighton
A-215
Re dwood
A-222
400
900
750
750
700
-gsum()()
-
-
P e rryridge
Brighton
Re dwood
1300
1500
700
SQL:
SELECT - , SUM()
FROM
GROUP BY -
30
(.)
,
.
-gsum() as
-()
- -
P e rryridge
1300
Brighton
1500
Re dwood
700
SQL:
SELECT - ,
SUM() AS -
FROM
GROUP BY -
31
(.)
().
..
(_, _, )
.
R(, _)
.
R(, _) _gAVG()
()
32
()
.
,
.
null
:
o
null
.
33
-
L-170
L-230
L-260
-
Downtown
Redwood
Perryridge
3000
4000
1700
-
Jones
Smith
Hayes
-
L-170
L-230
L-155
-
34
-
:
- -
L-170
Downtown
L-230
Re dwood
3000
4000
-
J one s
S mith
SQL:
SELECT .-, .-,
., .-
FROM INNER JOIN ON .= .-
-
L-170
L-230
L-260
-
Downtown
Redwood
Perryridge
3000
4000
1700
-
Jones
Smith
null
SQL:
SELECT .-, .-
, ., .-
FROM LEFT JOIN ON
.-= .-
35
-
:
-
L-170
L-230
L-155
-
Downtown
Redwood
null
3000
4000
null
-
Jones
Smith
Hayes
SQL:
.-,
.SELECT
, ., .-
RIGHT JOIN
FROM
ON
.-= .-
-
L-170
L-230
L-260
L-155
-
Downtown
Re dwood
P e rryridge
null
3000
4000
1700
null
-
J one s
S mith
null
Ha ye s
36
Null
null , null,
.
null
.
null
null.
null.
, null
, null
.
37
Null (.)
null
special truth unknown
false
unknown, not (A < 5)
A >= 5
unknown:
false
unknown
38