统计前十位......

whunvy 2002-12-20 09:45:21
统计表的问题,一次考试,100分制,参加考试的大概几万人,要统计得分最多的前十种分数,
(比如:得86分的最多,为9000人,得85分的人数第二,为8600人,...得91分的5600人,排在第十,其他的不显示,改怎实现?)
谢谢!
...全文
42 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
ang_e 2003-04-09
  • 打赏
  • 举报
回复
解决方法已经给你发过去了。注意查收。
SilverSands 2002-12-20
  • 打赏
  • 举报
回复
同意xiaozg118(肖),在数据库版都讨论n回了
esunny 2002-12-20
  • 打赏
  • 举报
回复
What do you mean?
whunvy 2002-12-20
  • 打赏
  • 举报
回复
是 PostGres
esunny 2002-12-20
  • 打赏
  • 举报
回复
Oracle中
select * from
(
select * from
(
select 分数 , count(分数) aa
from 表名
group by 分数
)
order by aa desc
)
where rownum <=10
xiaozg118 2002-12-20
  • 打赏
  • 举报
回复
(如果是SQL SERVER的话)

SELECT TOP 10 分数的字段
FROM 你的统计的表
GROUP BY 分数字段
ORDER BY COUNT(分数字段) DESC

这样得出的就是你要的前10位的分数
我已经测试过了
chengjian 2002-12-20
  • 打赏
  • 举报
回复
一个SQL 可以的!
试试吧.
SELECT TOP 10 COUNT(*) AS 人数,分数
FORM TABLE
GROUP BY 分数
ORDER BY 人数 DESC
whunvy 2002-12-20
  • 打赏
  • 举报
回复
用数据窗口,

分数分组
再按分数排序

结果是所有分数都列出来了,不能过滤.
jeking 2002-12-20
  • 打赏
  • 举报
回复
首先索引
其次select top 10 ...(MSSQL)
select ... where rownum <=10 (甲骨文)
andyzq 2002-12-20
  • 打赏
  • 举报
回复
declare @table table(name varchar(5), amount int)
insert @table(name, amount)
SELECT 考试分数, COUNT(考试分数)
FROM 表名
GROUP BY 考试分数
select top 10 name, amount
from @table
order by amount desc

你在查询分析器里面执行一下,看看结果
你可以把上面这段代码做成存储过程,然后建一个以该存储过程为数据源的
datawindow就可以了
szpqq 2002-12-20
  • 打赏
  • 举报
回复
算吧,笨办法,建个表两个字段c_mark(分数),c_count(人数)跟据考试的人得分情况来统计(循环),往表里插入数据,根据分数值判断,如果里面有某个分数值了,则在原来的人数基础上加1,否则insert一行,数据计算机出来后,做一个数据窗口,可用游标从刚建的那表中检索出数据(就10行,升序)
declare...
open...
fetch..
do while sqlca.sqlcode = 0
ll_row = dw_1.insertrow(0)
dw_1.object.c_mark[ll_row] = ..
...
ll_count++
if ll_count = 10 then exit
fetch..
loop
close ..
xiaozg118 2002-12-20
  • 打赏
  • 举报
回复
呵呵
我想出来了 (如果是SQL SERVER的话)

SELECT TOP 10 分数的字段
FROM 你的统计的表
GROUP BY 分数字段
ORDER BY COUNT(分数字段) DESC

这样得出的就是你要的前10位的分数
htp_htp 2002-12-20
  • 打赏
  • 举报
回复
分数分组
再按分数排序
可以了
:)
iwithyou 2002-12-20
  • 打赏
  • 举报
回复
count(..)大的排前面吧
不过好象计算量很大
xiaozg118 2002-12-20
  • 打赏
  • 举报
回复
我没有想到用SQL 语句怎么一次把这个问题解决
我只想到了一个用游标的方法
wu_07 2002-12-20
  • 打赏
  • 举报
回复
sql语句,看你用什么数据库了

xiaozg118 2002-12-20
  • 打赏
  • 举报
回复
没有用过这个数据库
不过我想应该是大同小异吧
whunvy 2002-12-20
  • 打赏
  • 举报
回复
是 postgres数据库.

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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