- , WHERE (HAVING) SELECT , WHERE . WHERE (HAVING) .. , , , , (, ).
. WHERE (HAVING) IN, EXISTS (= | <> | < | <= | > | >=). " ". . , , ..
. , , , ( ). , . .., , ( ).
, SQL , . . , , . , ( ), . , .
3.3.2.
, - IN, : 11, .. .
: | |||||||||||
SELECT , FROM WHERE IN (SELECT FROM WHERE = 11); |
.3.3.1, . , = 11, (1, 5, 6, 8). :
|
|
SELECT ,
FROM
WHERE IN (1, 5, 6, 8);
. 11, , , 11.
SELECT ,
FROM
WHERE IN
(SELECT
FROM
WHERE IN
(SELECT
FROM
WHERE = ''));
(11). , (1, 5, 6, 8). , SELECT, . .
SELECT ,
FROM , ,
WHERE . = .
AND . = .
AND = '';
, . , , .
3.3.3.
, , 6.
: | |||||||
SELECT DISTINCT FROM WHERE IN (SELECT FROM WHERE = 6); |
, , . , . , , , X Y:
SELECT DISTINCT X.
FROM X
WHERE X. IN
(SELECT Y.
FROM Y
WHERE Y. = 6);
X Y , FROM SELECT WHERE. , .
3.3.4. , IN
, , 6.
: | |||||
SELECT FROM WHERE = (SELECT FROM WHERE = 6); |
(<>, <=, <, >= >), , IN, .
3.3.5.
11.
SELECT ,
|
|
FROM
WHERE 11 IN
(SELECT
FROM
WHERE = .);
.3.3.2 , , . , . , . , :
- . , 1. . , 1,
2. (SELECT
3. FROM
WHERE = 1);
(9, 11, 12, 15). 1. =1 ( ) , =11 , , , .
- .. , .
, , . , , , .
.
, -.
: | |||
SELECT DISTINCT X. FROM X WHERE X. NOT IN (SELECT Y. FROM Y WHERE Y. <> X.); |
|
: " , X, (), , , Y, , () Y X".
, - X, Y.
3.3.6. , EXISTS
EXISTS () - , . SQL EXISTS (SELECT * FROM...).
, "SELECT * FROM..." , .. - , FROM , WHERE . ( .)
. , 11.
: | ||||||
SELECT FROM WHERE EXISTS (SELECT * FROM WHERE = . AND = 11); |
, , , , .. - =11 , , . , .
, , , '' 1. =11 =1, '' .
, ( IN ), EXISTS SQL. , IN, EXISTS. .
|
|
, 11.
: | |||||||||||
SELECT , FROM WHERE NOT EXISTS (SELECT * FROM WHERE = . AND = 11); |
3.3.7.
, (. 3.1) , :
SELECT , , ,
FROM , , , ,
WHERE . = .
AND . = .
AND . = .
AND . = .
AND = ''
AND = (SELECT MIN()
FROM X
WHERE X. = .);
, : , , .
, , : 1. . 2. , . 3. , .
3.4. (UNION)
[2] "", , , . . SQL , , :
- , , m;
- i (i = 1, 2,..., m) i- i- .
, , , = 1:
: | |||||||
SELECT FROM WHERE = 0 UNION SELECT FROM WHERE = 1 |
, UNION. , , SELECT, .
UNION ( ). , ( )
UNION
SELECT
FROM
WHERE Ca < 250
, , . WHERE
WHERE = 0 OR Ca < 250
3.5. SELECT
SELECT [2].
( ) , . :
SELECT *
FROM
WHER = ''
AND > 200;
( ) ( ) . :
|
|
SELECT DISTINCT , ,
FROM ;
, , , . :
SELECT , ,
FROM
WHER = ''
UNION
SELECT , ,
FROM
WHER = '';
, , . :
SELECT
FROM
WHERE IN
(SELECT
FROM );
, , . :
SELECT
FROM
WHERE NOT IN
(SELECT
FROM );
. 3.2.1-3.2.6.
, SELECT .
3.6.
SELECT , . , SELECT , , , , , .
, , :
- ;
- 400 ;
- 1.5 , .
, . 3.2,
- | 244.6 | 0.44 | |||
- | 321.3 | 0.53 | |||
- | 333.9 | 0.33 | |||
- | 339.2 | 0.27 | |||
- | 354.9 | 0.36 | |||
- | 170.2 | 0.30 | |||
- | 394.3 | 0.27 | |||
- | 155.5 | 0.32 | |||
- | 217.4 | 0.37 | |||
- | 330.0 | 0.22 | |||
- | 378.7 | 0.62 | |||
- | 7.1 | 0.05 | |||
- | 74.4 | 0.14 | |||
- | 154.8 | 0.11 | |||
- | 264.9 | 0.34 | |||
- | 396.6 | 0.22 |
SELECT , , ' -',
(SUM(INT((+)*4.1+*9.3)*/1000)),
(SUM(/_*/1000)+MIN(/100)),
FROM , _, , ,
WHERE . = .
AND . = .
AND . = .
AND . = _.
AND NOT IN
(SELECT
FROM
WHERE IN
(SELECT
FROM
WHERE _ = 0))
GROUP BY ,
HAVING SUM(/_*/1000+MIN(/100)) < 1.5
AND SUM(((+)*4.1+*9.3)*/1000) < 400
ORDER BY , 4;
. 3.2.
, , .
- FROM. , , _, , .
- WHERE. , . , : , .. . , . , "" . , , ( " , ".
- SELECT. , SELECT . SELECT (), . , , , , , , , _ , ' -' ''. , , , (): MIN MAX AVG?
- GROUP BY. . , .., , .
- SELECT. , , . ( ), ( ), (' -' '') . , .
- HAVING. , HAVING
7. SUM(/_*/1000+MIN(/100)) < 1.5
|
|
SUM(((+)*4.1+*9.3)*/1000) < 400
.
- ORDER BY. 6 ORDER BY . ( ), , SELECT, .. .
, , , , .
4. SQL