回答

收藏

SQL:在单个结果行中进行组计数

技术问答 技术问答 257 人阅读 | 0 人回复 | 2023-09-12

当我运行查询编号1时:
) n# m2 @9 K: c; P. N* \SELECT id, name, COUNT(name) AS count 5 u% Q0 a+ T7 S. O# e8 H8 E
  FROM markers
  H5 N0 Z4 R2 G. r2 b3 p% y/ A WHERE state like 'OR'
4 l7 R5 J; V" o  ]5 y3 t* a- Mgroup by named( _9 p& l- R0 F! J+ ~0 t' h6 l! {; T
我得到以下结果:
; Q( P3 p6 L$ @8 Qid  name                count  B% v7 i4 C, f; B. G8 q5 i
14  Alsea               2
$ o8 b8 I4 i$ w& Z76  Applegate Valley    10 U* |. ]  h% C0 N. q1 t, H
3   Ashland             9
/ a9 J- m* m5 S% v5 d* }; i0 p/ B64  Beaver              1
& T7 V8 j( f' ?0 w+ g4 G26  Bend                1% X( S4 |8 R1 W* o  @
10  Carlton             2
5 v  u  ?$ w! i3 O( C很好,除了,我希望每个被计数名称的实例都以其各自的ID出现,如查询号2的结果所示:
& |7 l& _  G# X4 E; jSELECT id, name, COUNT(name) AS count ' L6 t# n5 M6 V% K( B5 T  l4 a9 W
  FROM markers 9 R# r' p$ M( E3 `
WHERE state like 'OR' 8 Z- A. d9 w* T- y( Z
group by name, id9 f: U+ Q/ B/ J8 M) A$ ~3 D5 w
产生以下结果:
0 M! G9 {7 \/ c0 eid  name                count& I" a, C. ~& \( k2 q) m
14  Alsea               1$ N, e$ P2 D5 Z2 j2 X& z5 m- w
28  Alsea               1! ^2 K& U9 y$ b
76  Applegate Valley    14 k" A2 o' D4 T+ p' a2 D$ R( @
3   Ashland             1, a- F+ R! F' {, J9 \( n
13  Ashland             1/ ^4 o" Y; f5 X7 [  Y4 }) p
16  Ashland             1
  S5 d$ [) j2 S1 f8 T% j* Z) U; O20  Ashland             19 W/ `1 u9 y( {: [2 m) s
22  Ashland             19 h: o8 |( L; t! [& |
43  Ashland             1
5 i$ K0 I# M0 P4 H$ n- j48  Ashland             1" n  p; A# m  w
51  Ashland             1
. l+ q2 I# h0 d9 ]; [3 T/ m& `72  Ashland             1+ d' e+ m  j0 [* @$ B; e
64  Beaver              1% Y9 i/ e9 n& W/ _2 N  \, ]8 W+ f
26  Bend                1$ @/ \$ V$ C; O6 G! u
10  Carlton             1
3 z- F+ [$ M7 D: }) d! b6 ]! V27  Carlton             1
6 h" P4 V- r- ]+ a我是否可以运行一个查询,该查询将在每行中返回查询编号2的ID和名称以及查询编号1中的相应计数,如下所示?" |; v/ E4 t( i4 j0 m, q8 Z; j
id  name                count% Q( l! V% e5 n: D8 d6 i
14  Alsea               28 T- b/ ]3 y3 y. X
28  Alsea               2
9 t& S, G- F; T) S" q76  Applegate Valley    1+ Q6 N4 I( q, {- f/ z4 N
3   Ashland             98 M4 c! ~3 x. }7 [0 m0 g7 g
13  Ashland             9+ ]( A$ f0 G$ L( z9 g! j- s
16  Ashland             93 \  b# T/ @( @
20  Ashland             9
7 G# P" j3 b; g8 c9 v4 V22  Ashland             9
- s; z9 s1 P7 G+ j7 a0 P7 {  q' U43  Ashland             9
) o8 ?/ m- R: O+ [' q3 d48  Ashland             9: K& J" V2 s# j/ C* ^# B, r
51  Ashland             9' T: [) ~4 M6 ]
72  Ashland             9
- X/ o/ z9 O% n* v  {64  Beaver              1
0 {0 \- j/ Z" j0 l' {; m2 |26  Bend                1
2 ~/ T  ]6 F/ \# N) K10  Carlton             2
+ o: K6 F5 Z( S27  Carlton             2
' n  o% x* L( @  f                1 B; S& Q& [5 P2 A& y0 V7 e
解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则