【发布时间】:2019-11-04 10:59:56
【问题描述】:
我正在尝试按顺序对数据进行分组。我有下表:
id num
-------
1 1
2 1
3 1
4 2
5 1
6 2
7 2
8 4
9 4
10 4
我需要 SQL 查询来输出以下内容:
num count(num)
-------------------
1 3
2 1
1 1
2 2
4 3
样本数据:
select * into #temp
from (
select 1 as id, 1 as num union all
select 2, 1 union all
select 3, 1 union all
select 4, 2 union all
select 5, 1 union all
select 6, 2 union all
select 7, 2 union all
select 8, 4 union all
select 9, 4 union all
select 10, 4
) as abc
select * from #temp
选择 num,count(num) 来自#temp 按数量分组
我需要这个:
num count(num)
-------------------
1 3
2 1
1 1
2 2
4 3
实际输出:
num count(num)
---------------------
1 4
2 3
4 3
【问题讨论】:
-
您已经告诉我们您“需要”什么,但您没有告诉我们您的问题。你在这里问什么? (不,“请为我编写 SQL”不是问题。)到目前为止,您尝试了哪些方法,为什么没有成功?
-
我建议搜索空白和孤岛问题。
标签: sql sql-server tsql window-functions gaps-and-islands