- 在线时间
- 0 小时
- 最后登录
- 2007-9-23
- 注册时间
- 2004-9-10
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 9975 点
- 威望
- 7 点
- 阅读权限
- 150
- 积分
- 4048
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1893
- 主题
- 823
- 精华
- 2
- 分享
- 0
- 好友
- 0

我的地盘我做主
该用户从未签到
|
< >Having7 P, l, R! ]0 u
用途:
$ N8 g+ O; B Y& M/ V </P>< >指定群组或汇总的搜寻条件。</P>< >语法:
1 G0 s& X9 `4 G+ ?9 ^) k. }" y </P>< >SELECT column,SUM(column) FROM table
9 p( S m$ J7 s! d: ZGROUP BY column
; F( `+ B, f, Q, p1 l8 _& `; |% mHAVING SUM(column) condition value
C( ]1 e" Y; b6 h/ T% o$ d
# v# e; d4 U4 P# J4 {5 [% O解释: 6 q; G5 k7 C/ |3 o0 E" B1 k) l7 m; {
</P>< >HAVING 通常与 GROUP BY 子句同时使用。不使用 GROUP BY 时,HAVING 则与 WHERE 子句功能相似。
* Q$ i- @, j$ o: j8 X C </P>< >例:
* Z$ {7 r$ q; q1 u0 z/ F! K </P>< >"Sales"表中的原始数据:
3 X, {; I. m8 s/ T </P>< >Company
- |5 l) [; k4 H( I7 P' }' L U" ? - d* U" l+ y% x* i
Amount
( K- b- v" ]1 Z) C5 z: v. X
+ r; s! R; f. c
/ m) S9 _" {5 Z; z$ ZW3Schools
9 {2 q7 ^7 {) p. T) J. R* ^ * K5 H }; l. o ^# U5 ~$ }
5500
- t" C' G( x! }, l
. W# E% E; D8 z ` + d8 J# ~" C) Y2 W# b
IBM
) t N0 `! p( \/ ]. f+ H; d$ \. `
$ m5 [4 t) w: Y9 M/ V 4500 , a' m7 H) `* z
( _4 g: i5 b; j6 G6 N4 ~
9 u" s* `6 G) r, Q& e9 Z. ~" T! m1 sW3Schools ! R/ ]* H2 c; a
N( Z" p. F/ G. s
7100 ; g/ C6 G& G/ _* k: a9 g" C
+ \5 x: G/ g' u) y7 Q% n
</P>< >按照Company字段进行分组,求出每个Company的Amout的合计在10000以上的数据:</P>< >SELECT Company,SUM(Amount) FROM Sales
r t. R; |' Z, x' v! `5 C% |4 KGROUP BY Company HAVING SUM(Amount)>10000
) I; \/ _3 z; _& l </P>< >返回结果:</P>< >Company
6 q" b3 T4 a6 A" C B 1 C' n' f2 ^4 f( u6 |: i# I" `
SUM(Amount) 2 R' P- B( W$ Y
0 X0 b+ y5 F2 j7 f' x
. v6 `) W8 a8 Y- T6 l B. {& o3 N1 M2 ]W3Schools 0 B; W3 p/ w6 _' e
0 j/ E5 t- X- T8 a0 s; F- b 12600
* A8 j5 \0 _7 {0 `
- a2 q9 X& V: X4 J9 ~
8 J7 l3 `2 y, P ! \# `( @& p4 y# O0 i
</P>< >
! W& ]* d% j# w </P>< >Join8 [; [1 H" n( o' o
用途:
5 p6 s2 j: u. D+ T9 E) f </P>< >当你要从两个或者以上的表中选取结果集时,你就会用到JOIN。</P>< >例:
0 \9 X! O6 [- J! X1 o+ k% e+ u/ t </P>< >"Employees"表中的数据如下,(其中ID为主键):
, `( C7 l% J# k( G9 e- b </P>< >ID
: d! ^1 ?5 `0 g. c& W7 U ) Z+ h( r0 X3 j
Name
4 }! E& K7 E/ U3 v" _6 a
1 B' W2 k/ k, L* O4 [7 K! V
6 x' e) u8 p7 V+ L6 G) h' \01
0 _( q# F; K1 N) z _, V' J. H. s1 C 6 ?! n1 r5 u9 R1 a4 g. I/ Q
Hansen, Ola 2 d. o1 ?$ C; c0 B6 F+ ~- M
& \9 M$ C9 z8 f# {8 X( Z$ w3 R- T
) w5 d) V6 {; N2 ~2 t: c0 n0 }: [02
; Z. B/ d, z( j0 s+ P+ H/ V
: n9 c" T, b4 e6 g# S. C) t+ r$ ? Svendson, Tove
3 L9 C: E- ^. _% c* w& P2 l/ L
5 q5 ] F X% @, g % _; R( c8 ]8 A) e6 L
03 & y7 g! N. w) V4 `- l2 p
4 o' Q. h, P2 \" S
Svendson, Stephen
+ J7 e4 l c* K8 t( [2 c
) j+ H7 d6 _* t& c! _2 I0 \ 9 J8 s1 s& [2 [8 Z
04 , r5 @# a5 o! |
: m& v( ]$ Q1 N2 `; C; t |
Pettersen, Kari . f3 q( g; g* m% s/ v" k4 Z
+ j" w* s3 ?8 p# w$ @
4 x- n0 C: ^3 d) j. r- `" q' F"Orders"表中的数据如下: 5 V: Y5 g9 f" L c
</P>< >ID 7 n& ?- p! X1 P) Q$ w8 _% C
9 H, Y" h2 l1 {4 I; A, I) j Product
( ^2 U4 O2 [# Y7 W# ~7 ~& Q! S 4 O& P2 V. ^. j4 G5 ?+ u1 T" `6 {* i
( N5 h+ {, k4 k0 U( o" w! ]01 - f0 R- M6 a _1 M1 ?! q$ {: \
$ T9 d. k' K6 U0 ? @& g# S
Printer 9 [" \. E: A/ r/ I8 N
& B9 g5 k" |- m' D% M' X & W7 S9 j: `8 c# v7 K L6 U9 ?
03 / U' X9 ~7 k, g4 f( {
" t7 e6 {& H4 }4 r& }0 h2 }
Table
9 ^8 N& K/ e9 U! R5 g1 k% ^8 w( }! }
( t/ \5 n+ ]7 G# J: _
( S1 _; Q" n* G7 U; R03
( @2 I2 \" d' @+ ? G7 s ( l4 a1 y( Y% B! w+ o) F5 T% z
Chair 8 p9 [: u0 g5 f& `& T; @$ @+ `
- J6 R g0 ~ [7 L- t s
</P>< >用Employees的ID和Orders的ID相关联选取数据:</P>< >SELECT Employees.Name, Orders.Product
1 j: m5 `+ n' Z5 Z# P0 ZFROM Employees, Orders ; O0 g$ R+ n4 \7 L
WHERE Employees.ID = Orders.ID 8 U `6 a0 W$ T1 S+ T+ U
: F1 J5 ?! c9 @* [* b2 U0 Q
返回结果:
: [" r+ t n$ h+ w: T# @ </P>< >Name + r; R( I- _: P [( t% e
1 y9 K/ B+ i* P" I1 I: ] l8 g. u Product
$ ]) R5 ~1 q* d7 q4 u3 P" f 6 B3 l6 F8 z7 h6 Z$ Y9 Q
3 n/ A4 ]- {4 o# x& pHansen, Ola $ l3 X$ S4 S- ]: Q7 L
* ~5 E2 C* N: f/ V2 ^ Printer 2 \) i' Z; H3 [* ]5 |* `9 R: M
/ e' b+ x0 |& `, J1 a: l. `% q % s3 n, b3 k9 J7 x' A" R. ~
Svendson, Stephen
# @2 P, X) F2 V1 z/ t! v; B$ C : B6 r I4 ^* p( [# M/ k% k% u
Table + O# ^+ f5 o. j
5 i& r: d$ p2 ` ^! M4 I # b3 v, F2 i* b8 X$ K4 n8 }
Svendson, Stephen
: O7 q, e, F, H4 N y
9 ]1 h: s& A$ u$ `0 n1 j3 O7 _ Chair 8 ? H, u6 v/ k+ F4 G- B1 h
2 D6 Z3 ?7 ~$ m8 d# H
</P>< >或者你也可以用JOIN关键字来完成上面的操作:</P>< >SELECT Employees.Name, Orders.Product
5 e+ [* d/ U' A C4 f+ Z) _" eFROM Employees
. T& _& ]2 r6 [+ x5 i" sINNER JOIN Orders 7 D. D, N% ~* H" _' ?6 a6 a
ON Employees.ID = Orders.ID
F, d2 m# E! h6 I</P> |
|