select rownum as MingCi,sid, sname, avg(grade)
from table1
group by sid
order by avg(grade) desc
from table1
group by sid
order by avg(grade) desc
解决方案 »
- 怎么样把中文存储进us7ascii字符集的数据库?
- oracle设置DISPLAY问题
- 新手,求解
- NLS_INITCAP(x[,y])函数求解释
- 在oracle中写一个函数怎么用它呢
- Oracle 中我要查询一个表中间的n -- n + m行记录,Sql语句怎么写? ( n > 0, m >0 )
- 求关于group by 语句,急,多谢
- 请教一查询中间数据问题,谢谢。
- 字段后面跟(+)是什么意思?
- 请教Oracle9i的SQL*PLUS与SQL*PLUSWorkSheet有什么区别么?同一条命令为什么结果不同?是缓冲么?
- oracle 升级版本
- 本人急需知道用SYSTEM登陆了数据库后用什么命令能查到其他用户的登陆密码?在SQLPLUS中
a.姓名,
a.平均分
from (
selcet SNAME as 姓名,
sum(GRADE)/(selcet sum(count(*)) cid_cot from TABLE1 group by CID) as 平均分
from TABLE1
group by SNAME
)
order by a.平均分 desc
子查询为表a
----------------
selcet rownum as 名次,
a.姓名,
a.平均分
from (
selcet SNAME as 姓名,
sum(GRADE)/(selcet sum(count(*)) cid_cot from TABLE1 group by CID) as 平均分
from TABLE1
group by SNAME
) a
order by a.平均分 desc
selcet DENSE_RANK() OVER(ORDER BY a.平均分 DESC) AS as 名次,
a.姓名,
a.平均分
from (
selcet SNAME as 姓名,
sum(GRADE)/(selcet sum(count(*)) cid_cot from TABLE1 group by CID) as 平均分
from TABLE1
group by SNAME
) a
order by a.平均分 desc
好像不等于avg(单科分数) 吧?
不是跟你较真,从问题出发,可能我的方式有些直接了。1、如要求如下:
-------------------------------->
LZ是要求1,2,3,3,5这样的排名吧?
符合??3,3,5!?
--------------------------------<
可以把我写的最后一个sql改一下:DENSE_RANK() OVER(ORDER BY a.平均分 DESC) AS as 名次
--->
RANK() OVER(ORDER BY a.平均分 DESC) AS 名次2、缺考的情况就由楼主自己解决了。