VB 的select查询语句中怎么排序统计
如图,我想统计每个年级的总人数,结果就按照NO排序(仅仅是排序用,不要显示出来),显示成下面这样:年级人数2年级1111年级623年级77我用的程序是VB,另外i,直接用...
如图,我想统计每个年级的总人数,结果就按照NO排序(仅仅是排序用,不要显示出来),显示成下面这样:
年级 人数
2年级 111
1年级 62
3年级 77
我用的程序是VB,另外i,直接用select 年级,Count(*) from 统计表 group by 年级 order By NO 查询会出现错误,貌似COunt属于聚合函数,不能和no一起用
求解怎么写查询语句就能达到我要的结果了?
先给30分,采纳后再送30分 展开
年级 人数
2年级 111
1年级 62
3年级 77
我用的程序是VB,另外i,直接用select 年级,Count(*) from 统计表 group by 年级 order By NO 查询会出现错误,貌似COunt属于聚合函数,不能和no一起用
求解怎么写查询语句就能达到我要的结果了?
先给30分,采纳后再送30分 展开
1个回答
展开全部
1、NO 字段这样用是错误的,原因--楼上讲的
2、统计人数的函数 是 sum(人数)。count() 是用来统计 group by 分组后每组行数的
3、如果一定要按 No 排序,并且显示为你要求的那样是做不到(--至少现在的我做不到..)
(1)-select 年级,sum(人数) 人数 from 统计表 group by 年级 -- 结果如下(它会按照 group by 字段"年级" 排序)
1年级 55
2年级 28
3年级 56
(2)--还不行的话,等 高手来 了,O(∩_∩)O~
2、统计人数的函数 是 sum(人数)。count() 是用来统计 group by 分组后每组行数的
3、如果一定要按 No 排序,并且显示为你要求的那样是做不到(--至少现在的我做不到..)
(1)-select 年级,sum(人数) 人数 from 统计表 group by 年级 -- 结果如下(它会按照 group by 字段"年级" 排序)
1年级 55
2年级 28
3年级 56
(2)--还不行的话,等 高手来 了,O(∩_∩)O~
追问
我就是不想让它按照年级来排成123才这样弄的,不然的话我也会啊,、
但是我就是回想要原始的按照NO来排列的213的顺序,至于原因,这里就不说了,
追答
1、这个主要是 使用聚合函数...这些东西时,sql server 默认会拍一次序的,所以..
2、另外,你可以将 no 字段带上,查询到 一个结果集中,然后在VB 中处理得到自己想要的数据
3、--如果你的sql是2005以上的,你可以看下下面这文章
http://www.itfarmer.com.cn/971.html
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询