欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【精彩的表数据排序分组】,下面是详细的分享!
精彩的表数据排序分组
今天,当你需要对一个没有排序ID的表进行排序,并且想给每一行数据都给一个序号。这相当于很多人问到的,如何在一个视图中为每一行增加一个自动增长的“ID”号。你可以这样写:
| 以下为引用的内容: Select a.Badge,Count(a.Badge) as xorder From cPayroll a , cPayroll b Where a.Badge >=b.Badge Group by a.Badge |
看了以后的语句,你可能会觉得非常简单。在以上的基础上,还可以满足以下这样一个很实用的功能。一个表中的前20行分成第1组,从21行-->40行分成第2组,41-->60 分成第3组。也即是在一个表的基础上拓展用视图生成以下的数据。(xOrder 与 Group 都是视图生成的。)
| 以下为引用的内容: Badge xOrder Group A1 1 G1 A2 2 G1 . B1 21 G2 B2 22 G2 ... C1 41 G3 ... |
在上面的视图得出来以后, 我们就可以用 Select * from ViewName Where Group='G1' ('G2'....) 的语句进行分组或分页显示查询了。以下我们来生成这样的结果。
在排序功能实现了以后,再实现分组,就是略微变化一下而已:
| 以下为引用的内容: Select Badge , Count(a.Badge) as xorder , Cast(((Count(a.Badge)-1)/20 ) +1 as varchar(10)) as Group From cPayroll a , cPayroll b Where a.Badge >=b.Badge Group by a.Badge |
以上所分享的是关于精彩的表数据排序分组,下面是编辑为你推荐的有价值的用户互动:
相关问题:数据表中记录先分组再排序,选出每个分组的前面几条
答:SELECT * FROM table_name WHERE ( SELECT COUNT(1) FROM table_name subTopnTest WHERE table_name.GroupId = subTopnTest.GroupId AND table_name.Num < subTopnTest.Num ) < 2 >>详细
相关问题:excel中如何将已分组的数据,按分组排序。详情如图。
答:亲,这种表格是我觉得最费力不讨好的,先还原成没有合并单元格的时候,采用枢纽分析就可以得到你想要的图案 >>详细
相关问题:我想在数据库中的一个表中查询出全部数据 并且按照...
答:select 分组列1,分组列2..., 聚合列1,聚合列2... from 表 group by 分组列1,分组列2... order by 分组列或聚合列 -------- 分组查询中,做为查询结果显示的列,必须是用于分组的列,或者聚合的列. 比如:sum(),count(),avg()等等. >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
