璺 FROM, , FROM.
FROM . FROM .
SELECT , :
SELECT <>
FROM <> [IN ]
:
<> | , , , SQL, (ALL, DISTINCT, DISTINCTROW TOP) SELECT. |
<> | , , . , 璺: INNER JOIN, LEFT JOIN, RIGHT JOIN. |
, , < >. |
, FROM SELEC, < > - . :
SELECT < >;
< > ( ) :
SELECT [] { * | .*| [.] 1 [ AS 1] [.] 1 [ AS 1], [.] 2 [AS 2] [, ] ] } | (5.2.1) |
:
ALL | ³ ; |
DISTINCT | ³ ; |
DISTINCTROW | ³ ; |
TOP n | ³ n , . . |
, AS .
FROM:
FROM <1> | |
[INNER] | |
│ {{LEFT │RIGHT│FULL }[OUTER]} JOIN < 2> [ON < >] | (5.2.2) |
JOIN. (璺) :
() 璺 | INNER; |
璺 - OUTER, - LEFT JOIN RIGHT JOIN | |
LEFT JOIN | ᒺ |
RIGHT JOIN | ᒺ . |
INNER OUTER FROM, ᒺ (, 璺).
FROM ᒺ . INNER JOIN , 璺 , TRUE.
|
|
璺 䳿
, , , . .
$ :
SELECT .[ ], ., [ ]._
FROM LEFT JOIN [ ] ON .[ ] = [ ].
WHERE ((([ ]._) Is Null));
?
, :
. |
2. , . :
1. , .
2. 1. , ʳ 0. .
3. 2 , . .
4. 3. 4 ( ) , .
2. . :
1- | |
2- | ᒺ |
. , , . :
,
.
a) . , (. ) , . 5.1.6, SQL-:
SELECT DISTINCTROW [ ].[_#], Count(*) AS ʳ
FROM [ ]
GROUP BY [ ].[_#]
ORDER BY Count(*) DESC;
b) .
1 . ( ). SQL- :
SELECT [ ]._, [ ].[_#], IIf([ ]![_#]=[ ]![_#],[ ]![ʳ],0) AS ʳ, [ ].[ֳ ], IIf([ ]![_#]=[ ]![_#],[ ]![ʳ]*[ ]![ֳ ],0) AS
|
|
FROM [ ] LEFT JOIN ON [ ].[_#] = .[_#]
ORDER BY IIf([ ]![_#]=[ ]![_#],[ ]![ʳ]*[ ]![ֳ ],0) DESC;
:
1. , , , . 1 , , . . , , . ³ , ᒺ , . , , ( ) . (NULL). C , 1, ᒺ , :
FROM [ ] LEFT JOIN ON [ ].[_#] = .[_#]
2. NULL ʳ 0, 䳿 ( IIf):
IIf([ ]![_#]=[ ]![_#],[ ]![ʳ],0) AS ʳ
3. , SELECT
IIf([ ]![_#]=[ ]![_#],[ ]![ʳ]*[ ]![ֳ ],0) AS
4. :
ORDER BY IIf([ ]![_#]=[ ]![_#],[ ]![ʳ]*[ ]![ֳ ],0) DESC;
1. :
_ | _# | ʳ | ֳ | |
/ | ||||
2 . 2 , SQL:
SELECT [ ].[_#], [ ].[ֳ ], [ ]![ʳ]*[ ]![ֳ ] AS
|
|
FROM [ ] RIGHT JOIN ON [ ].[_#] = .[_#];
:
¨ 2, ᒺ , , , , , , . FROM :
FROM [ ] RIGHT JOIN ON [ ].[_#] = .[_#];
2. SELECT:
[ ]![ʳ]*[ ]![ֳ ] AS
2 :
_# | ֳ | |
3 . 3 , SQL:
SELECT TOP 4
[ ].[_#], [ ].[ֳ ], [ ]![ʳ]*[ ]![ֳ ] AS
FROM [ ] RIGHT JOIN ON [ ].[_#] = .[_#]
ORDER BY [ ]![ʳ]*[ ]![ֳ ] DESC;
:
:
¨ (5.2.1.) , , , SELECT TOP 4;
¨ , , :
ORDER BY [ ]![ʳ]*[ ]![ֳ ] DESC;
¨ .
SELECT TOP 4
. :
_# | ֳ | |
2.
1. 2 1 , , , 0- ʳ .
2 , SQL:
SELECT [ ]._, Count([ ].[_#]) AS ʳ, [ ].[_#], [ ]., [ ].[ֳ ], [ ].[_#], Count([ ]![_#])*([ ]![ֳ ]) AS [ ]
FROM [ ] LEFT JOIN [ ] ON [ ].[_#] = [ ].[_#]
|
|
GROUP BY [ ]._, [ ].[_#], [ ]., [ ].[ֳ ], [ ].[_#]
ORDER BY [ ].[_#];
:
5.1.
_ | ʳ | ._# | ֳ | # | ||
/ |
:
¨ . ֳ , (10 22 ), _#.
¨ . _# 10 . . _# ( , ) , , .
SQL- :
FROM [ ] LEFT JOIN [ ] ON [ ].[_#] = [ ].[_#]
, [ ].[_#] [ ].[_#] , .
[ ].[_#] , ,
[ ].[_#] = [ ].[_#]
ʳ 0, . , ʳ Count, - , . .