, , . , SQL, , , :
1. - δ (duplicate-elemination operetor) - , .
2. (aggregations operators), , , , , -, , . .
3. (grouping) - . , , . , .
γ (grouping operator) .
4. τ (sorting operator) , , . τ , ( ) . τ 䳿 , .
5. π (projectionoperator) . , π - .
6. 璺 (outerjoin operator) 璺, (dangling) . , null.
.
. δ(R)
³ R ³ δ (R)
.
, , , . :
1. SUM ;
|
|
2. AVG ;
3. MIN MAX , , ; , , , , ;
4. COUNT , , , , .
5.7. SUM(B), AVG(A), MIN(A), MAX(B), COUNT(A).
1. SUM(B) = 2+4+2+2 = 10;
2. AVG(A) = (1+3+1+1+)/4 = 1,5;
3. MIN(A) = 1;
4. MAX(B) = 4;
5. COUNT(A) = 4.
.
γL(R) R . γ L , :
1. R, γ; R; (grouping attribute);
2. , ; , ; , , (aggregated attribute).
γL(R) :
1. R . , L. , R
2. , :
, ;
, , L.
5.8.
³ StarsIn (title, year, starName) . , , .
starName . MIN (year) COUNT (title).
γstarName, MIN (year)→minYear, COUNT (title)→ctTitle (StarsIn),
: γ ; starName ; MIN (year)→minYear year, MIN, minYear; COUNT (title)→ctTitle title, COUNT, ctTitle; StarsIn .
5.8 .5.11.
.5.11. , SQL 5.8.
|
|
.
πL(R). L :
1. R;
2. x → y, x, y ; x → y L x R y;
3. E → z, E , , , , z , E.
. , - R -.
5.9.
πA, B+C→X(R). .5.12.
A | B | C | A | X | |
³ R πA, B+C→X(R)
.5.12. R
.
τL(R). τL(R), R , L R, R, , L. L A1, A2, ,An, A1. , A1, A2. L. , .
璺.
璺 璺, (dangling) , , , . 璺 . 璺:
璺; R º S. 璺 R S, R S. R , R, S , S, null, ^.
璺, R º L S. 璺 R S, R. R , R, null, ^.
璺 R º R S. 璺 R S, S. S , S, null, ^.
5.10. U V , .5.13, R º S, R º L S. R º R S , .5.13.
A | B | C | B | C | D | |
³ U ³ V
|
|
A | B | C | D |
^ | |||
^ | |||
^ |
³ U º V
A | B | C | D |
^ | |||
^ |
³ U º L V.
A | B | C | D |
^ |
³ U º R V
.5.13 璺 U V