分组行号

chunyingjun7212 2017-09-07 12:15:52
a表


b c
11 a
11 b
11 c
12 dd
12 ee
12 aa

想得到根据字段b 取得的行号
...全文
314 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoxiangqing 2017-09-08
  • 打赏
  • 举报
回复
用ROW_NUMBER()就行了
道素 2017-09-08
  • 打赏
  • 举报
回复
别的帖子的答复误贴到这里了。下面是很本帖相关的

;with t(b,a) AS
(
    select 11,N'a' union all
    select 11,N'b' union all
    select 11,N'c' union all
    select 12,N'dd' union all
    select 12,N'ee' union all
    select 12,N'aa'
)
select dense_rank()over(order by b) as gid,row_number()over(partition by b order by a) as rid, * from t

  	gid	rid	b	a
	1	1	11	a
	1	2	11	b
	1	3	11	c
	2	1	12	aa
	2	2	12	dd
	2	3	12	ee

道素 2017-09-08
  • 打赏
  • 举报
回复

 select year(sdate) as yr,month(sdate) as m,sno,sname,sum(case when (datediff(hour,checkin,checkout)+24)%24>=8 then 1 else 0 end)
 from #tmp_1
 group by sno,sname,year(sdate),month(sdate)

 	yr	m	sno	sname	(No column name)
1	2017	8	1906	王海	5
2	2017	9	1906	王海	3
3	2017	8	1913	游一秀	6
4	2017	9	1913	游一秀	3
5	2017	8	1962	梅青青	7
6	2017	9	1962	梅青青	5

吉普赛的歌 版主 2017-09-07
  • 打赏
  • 举报
回复
USE tempdb
GO
--测试数据
if not object_id(N'T') is null
    drop table T
Go
CREATE TABLE T(
	b INT,
	c VARCHAR(10)
)
GO
INSERT INTO T(b,c)
select 11,'a'
union select 11,'b'
union select 11,'c'
union select 12,'dd'
union select 12,'ee'
union select 12,'aa'

SELECT ROW_NUMBER() OVER (PARTITION BY b ORDER BY c) AS rid
,* 
FROM t
/*
rid	b	c
1	11	a
2	11	b
3	11	c
1	12	aa
2	12	dd
3	12	ee
*/
 
顺势而为1 2017-09-07
  • 打赏
  • 举报
回复
Select Row_No=row_number() over (Partition by c) From a表
二月十六 版主 2017-09-07
  • 打赏
  • 举报
回复
根据字段b 取得的行号,是需要分组吗还是按顺序?
--测试数据
if not object_id(N'Tempdb..#a') is null
drop table #a
Go
Create table #a([b] int,[c] nvarchar(22))
Insert #a
select 11,N'a' union all
select 11,N'b' union all
select 11,N'c' union all
select 12,N'dd' union all
select 12,N'ee' union all
select 12,N'aa'
Go
--测试数据结束
--分组
Select ROW_NUMBER()OVER(PARTITION BY b ORDER BY GETDATE()) AS num,* from #a
--按顺序
SELECT ROW_NUMBER()OVER(ORDER BY b) AS num,* FROM #a


--新增功能:支持图片显示 --新增功能:增加分组头设置,支持按字段分组分组次级排序 --新增功能:增加Avg求平均函数,GroupRowNumber分组行号函数 --新增功能:单元格支持拖放调整顺序 --新增功能:支持四则运算优先运算 --新增功能:新增百分率格式化 --新增功能:新增RowNumber行号函数 --修正数个Bug 详情参考:http://blog.csdn.net/hunkcai/archive/2010/10/10/5932204.aspx Web报表引擎: Web上的良好的打印解决方案,WinForm的打印预览体现,报表自动化,支持直接打印,页小计,统计,转成金额大写,一维码显示, 图片显示等功能,满足中国式报表的常见功能需求。 Web报表编辑器: * Web上良好的报表设计用户体现,可视化编辑,支持设计/预览视图撤换。 * 通过下拉框选择,快速设置报表数据的绑定。 * 支持单元格内容格式化(数字,金额,日期等)输出。 * 通过表达式编辑,轻松设计页小计行或页统计行。 * 支持标题高度,行高,列宽拖动编辑,拖放调整顺序等良好操作。 注: * 用Adobe Flash Builder 4开发环境打开,用Flex SDK 4.1进行编译 * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现和报表设计体现。 * 报表引擎效果图参考:http://blog.csdn.net/hunkcai/archive/2010/01/14/5190898.aspx * 报表编辑器效果图参考:http://blog.csdn.net/hunkcai/archive/2010/04/21/5512031.aspx
--新增功能:支持图片显示 --新增功能:增加分组头设置,支持按字段分组分组次级排序 --新增功能:增加Avg求平均函数,GroupRowNumber分组行号函数 --新增功能:支持四则运算优先运算 --新增功能:单元格支持拖放调整顺序 --新增功能:新增百分率格式化 --新增功能:新增RowNumber行号函数 --修正数个Bug 详情参考:http://blog.csdn.net/hunkcai/archive/2010/10/10/5932204.aspx Web报表引擎: Web上的良好的打印解决方案,WinForm的打印预览体现,报表自动化,支持直接打印,页小计,统计,转成金额大写,一维码显示, 图片显示等功能,满足中国式报表的常见功能需求。 Web报表编辑器: * Web上良好的报表设计用户体现,可视化编辑,支持设计/预览视图撤换。 * 通过下拉框选择,快速设置报表数据的绑定。 * 支持单元格内容格式化(数字,金额,日期等)输出。 * 通过表达式编辑,轻松设计页小计行或页统计行。 * 支持标题高度,行高,列宽拖动编辑,拖放调整顺序等良好操作。 注: * 用Adobe Flash Builder 4/Flex Builder 3开发环境打开,用Flex SDK 3.5进行编译 * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现和报表设计体现。 * 报表引擎效果图参考:http://blog.csdn.net/hunkcai/archive/2010/01/14/5190898.aspx * 报表编辑器效果图参考:http://blog.csdn.net/hunkcai/archive/2010/04/21/5512031.aspx

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧