Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Bazy_dannykh_Uchebnoe_posobie

.pdf
Скачиваний:
13
Добавлен:
02.05.2015
Размер:
21.47 Mб
Скачать

,

. A B

,

.

-

A X, B Y, -

(..).

- A X B Y

(A TIMES B) WHERE (XY)

. , -

, : A [XY] B

20:

 

 

 

 

 

 

 

,

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

,

 

 

 

 

 

,

 

 

 

 

 

 

 

 

(

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

,

(

 

)

).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20.

 

 

 

 

 

 

 

 

 

 

 

 

:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

Y

 

 

 

 

(

 

 

 

 

 

(

 

 

 

 

 

 

 

 

)

 

 

 

 

)

 

 

1

 

 

 

 

4

 

 

 

1

 

3

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

1

 

 

 

2

 

2

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

2

 

 

 

3

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

71

 

"

 

 

 

 

 

 

 

 

 

?"

-

A[X Y]B:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

21.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A[X Y]B:

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

Y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(

 

 

 

 

 

 

(

 

 

 

 

 

 

 

 

 

 

 

 

 

 

)

 

 

 

 

 

 

 

 

)

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

4

 

 

 

1

 

 

 

 

 

 

3

 

 

1

 

 

 

 

4

 

 

 

2

 

 

 

 

 

 

2

 

 

1

 

4

 

3

 

 

1

 

 

2

 

 

 

 

1

 

 

 

3

 

 

 

 

 

 

1

 

 

3

 

 

 

 

2

 

 

 

2

 

 

 

 

 

 

2

 

 

3

 

2

 

3

 

 

1

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

,

 

 

 

 

.

-

 

 

 

 

: A[X=Y]B

21:

P (

), D (

), PD (

).

,

 

,

-

[PNUM=PNUM]PD.

 

 

,

, -.

22. -:

_

PNUM

PNAME

DNUM DNAME

1

 

1

2

 

2

3

 

3

 

PNUM

 

 

DNUM

 

 

VOLUME

 

 

 

 

 

1

 

 

1

 

 

100

 

 

 

 

1

 

 

2

 

 

200

 

1

 

 

3

 

 

300

 

2

 

 

1

 

 

150

 

2

 

 

2

 

 

250

 

3

 

1

 

1000

 

 

 

 

 

 

 

 

72

 

 

 

"

 

 

 

 

 

 

 

".

 

 

 

 

-

.

 

 

 

 

 

 

 

 

 

23.

 

 

 

 

 

-

P[PNUM=PNUM]PD.

 

PNUM1

PNAME

 

PNUM2

 

DNUM

 

VOLUME

 

 

 

 

 

 

 

1

 

 

1

 

1

 

100

 

 

1

 

 

1

 

2

 

200

 

 

1

 

 

1

 

3

 

300

 

 

2

 

 

2

 

1

 

150

 

 

2

 

 

2

 

2

 

250

 

3

 

3

1

1000

 

 

 

 

 

 

 

 

 

 

 

A(A1,A2,,An,X1,X2,Xp) B(X1,X2,Xp,B1,B2,Bm),

X1,X2,Xp (..

).

A B

(A1,A2, An,X1,X2, Xp)

,

 

(a1,a2,

an,x1,x2,

xp,b1,b2, bm),

,

(a1,a2, an,x1,x2,

xp) A (x1,x2,

xp,b1,b2,

bm) B

 

 

:

A JOIN B

. ,

.

.

:

;

;

,

;

, ;

, ;

73

.

. , (, , ) , ..

(A JOIN B) JOIN C = A JOIN (B JOIN C)

, :

22:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

"

 

 

 

 

 

 

 

",

 

 

 

 

 

 

 

 

 

 

 

(

 

 

 

 

 

 

 

 

,

 

 

 

 

 

 

 

):

 

 

 

 

 

 

 

 

 

 

 

 

 

 

24.

 

 

 

 

 

 

 

 

 

 

 

 

P JOIN PD JOIN D.

 

 

 

 

 

 

 

 

DNUM

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PNUM

 

 

 

PNAME

 

 

 

DNAME

 

 

 

VOLUME

 

 

1

 

 

 

 

 

 

1

 

 

 

 

100

 

 

1

 

 

 

 

 

 

2

 

 

 

 

200

 

 

1

 

 

 

 

 

 

3

 

 

 

 

300

 

 

2

 

 

 

 

 

 

1

 

 

 

 

150

 

 

2

 

 

 

 

 

 

2

 

 

 

 

250

 

3

 

 

 

1

 

 

1000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A(X1,X2,...Xn,Y1,Y2,

Ym)

B(Y1,Y2, Ym),

 

Y1,Y2,

Ym -

 

.

 

 

 

A

B

 

 

 

(X1,X2,...Xn)

,

 

 

(x1,x2,xn),

,

 

(y1,y2,

ym) B

 

A

 

(x1,x2, xn,y1,y2,

ym).

 

 

 

 

A , B .

.

: A DIVIDDY B

23:

, , "?".

74

X=PD[PNUM,DNUM],

. X DEVIDEBY Y ,

.

25.

.

 

 

 

 

 

 

 

X

 

 

X=PD[PNUM,DNUM]

 

Y=D[DNUM]

DEVIDEBY Y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DNUM

 

PNUM

 

 

PNUM

 

DNUM

 

1

 

1

 

 

 

 

 

 

 

1

 

1

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

1

 

2

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

1

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

1

 

 

 

 

 

2

2

 

 

 

 

 

 

 

 

 

 

 

 

3

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

75

8.

SQL.

 

 

 

 

 

,

 

,

.

 

 

,

,

,

,

,

 

,

, ,

, . . SQL Structured Query Lanquage - g

. SQL ANSI (American National Standard Institute

)

ISO (International Standard Organization

). SQL ANSI, , , , . ,

" " , .

- , , , .

,

, , , ,

(),

.

SQL

SQL: . , , .

SQL

,

. SQL, , , (

) .

76

. 19.

 

 

.

SQL

 

 

 

SQL,

 

 

,

 

(

).

 

.

,

,

 

SQL

 

,

 

 

 

.

 

 

 

 

:

 

(

)

,

, :

();

SQL,

;

.

, :

(,

);

,

(, , ,

-);

,

;

;

.

77

SQL

:

 

 

 

 

(

. Data Definition Language, DDL)

 

(

 

. Data Manipulation Language, DML)

 

 

 

(

. Data Control Language, DCL)

 

 

(

. Transaction Control Language, TCL)

(DCL). GRANT

,

SQL.

DENY

- ,

.

( DDL).

, , - : , , .

CREATE TABLE

<> - .

DROP TABLE

<> - .

ALTER TABLE

<> -

, .

TABLE VIEW ()

INDEX ().

( DML).

DML

.

SELECT

, . , , «» «».

78

UPDATE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

.

 

 

 

 

 

 

INSERT

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

DELETE

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

.

 

 

 

 

 

 

 

 

,

 

 

 

.

 

 

 

 

 

 

 

 

SQL

ANSI.

 

 

SET TRANSACTION

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

COMMIT

 

 

 

 

 

 

 

.

.

 

 

 

 

ROLLBACK (

)

 

 

 

 

 

 

.

.

 

 

 

 

 

26.

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1001

 

 

 

 

 

 

 

0.12

1002

 

 

 

 

 

 

 

0.13

1004

 

 

 

 

 

 

 

0.11

1007

 

 

 

 

.

 

 

0.15

1003

 

 

 

 

 

 

 

0.10

 

 

 

 

 

 

27.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2001

 

 

 

 

 

 

100

 

1001

2002

 

 

 

.

 

 

200

 

1003

2003

 

 

 

 

 

 

200

 

1002

2004

 

 

 

 

 

 

300

 

1002

2006

 

 

 

 

 

 

100

 

1001

2008

 

 

 

 

 

 

300

 

1007

2007

 

 

 

.

 

 

100

 

1004

79

28.

3001

18.69

10.03.1990

2008

1007

3003

767.19

10.03.1990

2001

1001

3002

1900.10

10.03.1990

2007

1004

3005

5160.45

10.03.1990

2003

1002

3006

1098.16

10.03.1990

2008

1007

3009

1713.23

10.04.1990

2002

1003

3007

75.75

10.04.1990

2004

1002

3008

4723.00

10.05.1990

2006

1001

3010

1309.95

10.06.1990

2004

1002

3011

9891.88

10.06.1990

2006

1001

SELECT (

)

 

 

 

 

SELECT

 

 

SELECT,

 

 

.

 

 

 

 

,

,

 

.

 

 

 

,

 

 

(*).

 

 

FROM

,

 

 

 

,

.

 

 

 

 

(;),

 

,

 

 

 

.

 

,

,

 

 

 

.

 

 

 

 

 

24:

 

 

 

 

 

 

 

.

 

 

 

 

«

»

[

,

]

 

 

 

29.

 

.

 

SELECT

,

 

 

 

 

FROM

 

;

 

 

-----------------------------------------------------------------------

 

 

 

 

 

0.12

 

 

 

 

 

0.13

 

 

 

 

 

0.11

 

 

 

 

 

0.15

 

 

 

 

 

0.10

 

 

DISTINCT

 

 

 

 

 

DISTINCT (

) -

,

 

 

 

 

 

SELECT.

 

 

 

.

 

 

 

 

 

80

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]