From Table
A B
_______________
1 A
3 B
6 C
7 C
8 X
9 Y
15 Z
16 R
17 t
23 T
43 e
如何带来这个结果:
Range A Count B
_________________
1-10 6
11-20 3
21-30 1
31-40 1
这可以使用循环来完成:
Select Count (* ) from TableA where b between @a and @b
但我想在不使用任何循环的情况下这样做吗?
答案 0 :(得分:2)
试试这个:
SELECT
Cast(((A / 10) * 10 + 1) as varchar(100)) + '-' + Cast(((A / 10) * 10 + 10) as varchar(100)) AS 'Range A',
Count(*) as 'Count B'
FROM TableA
GROUP BY A / 10