如何解决SQL计数按数字序列分组
如果您的DBMS支持窗口功能(例如sql Server 2005+)
SELECT id,
count(*) AS res
FROM (SELECT *,
[pNum] - ROW_NUMBER() OVER (PARTITION BY [id] ORDER BY [pNum]) AS Grp
FROM YourTable) T
GROUP BY id,
Grp
解决方法
我有一个这样的SQL表:
id pNum
----- --------
100 12
100 13
100 15
100 16
100 17
200 18
200 19
300 20
300 21
300 25
我想按id和pNum序列分组,并计算行数。这样的结果。
id res
----- --------
100 2
100 3
200 2
300 2
300 1
关于如何做的任何想法?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。