sql查询排名
‘壹’ 按照人名查出学生的各科成绩以及总成绩并按总成绩排名的sql语句
按照人名查出学生的各科成绩以及总成绩并按总成绩排名的sql语句示例如下:
selectA.name ,
(selectB.scorefromtable_scoreBwhereB.type='数学'andA.id=B.id) as数学 ,
(selectB.scorefromtable_scoreBwhereB.type='语文'andA.id=B.id) as语文,
(selectB.scorefromtable_scoreBwhereB.type='英语'andA.id=B.id)as英语,
(selectSUM(B.score)fromtable_scoreBwhereA.id=B.id)assum_score
fromtable_studentAorderbysum_scoreDESC
以上sql语句首先把学生表和成绩表联合查出每个学生的数学、语文、英语成绩,然后通过selectSUM(B.score)fromtable_scoreBwhereA.id=B.id查出每个学生的总成绩。
最后orderbysum_scoreDESC实现按总成绩倒叙排列。
(1)sql查询排名扩展阅读
上述sql语句重点是对as关键字的使用- Alias(别名),通过使用 SQL,可以为列名称和表名称指定别名(Alias)。
表的 SQL Alias 语法
SELECT column_name(s) FROM table_name AS alias_name;
列的 SQL Alias 语法
SELECT column_name AS alias_name FROM table_name;
Alias 实例: 使用表名称别名
假设我们有两个表分别是:"Persons" 和 "Proct_Orders"。我们分别为它们指定别名 "p" 和 "po"。
现在,我们希望列出 "John Adams" 的所有定单。
我们可以使用下面的 SELECT 语句:
SELECT po.OrderID, p.LastName, p.FirstName FROM Persons AS p, Proct_Orders AS poWHERE p.LastName='Adams' AND p.FirstName='John'
‘贰’ sql 排名次
你整理一个demo出来,把你的三张原始数据贴在excle中,然后再把你想要的结果贴在里面,然后这四张图,截图上传上来大家就知道你想要的了。
‘叁’ sql语言,有一个成绩单表,已知学生姓名,如何查询名次
1、创建测试表,
create table test_score(name varchar2(20), score number);
‘肆’ 如何用一条SQL语句查询某人所在名次,注意,是名次。 mysql
1、首先新建一个test数据库,在数据库里创建一张data数据表,在表内插入5条测试数据。
‘伍’ SQL语句查询某字段数值排名第10名 如何查询
select grade,row_number()over(partition by class order by grade desc) mm from 成绩表 where 班级=6 and mm=10
‘陆’ 如何用sql语句将销量排名前十的商品查询
1、创建测试表,
create table test_sale(id varchar2(20),sale_num number(10));
‘柒’ sql查询并排名
WITHKKAS(
SELECTinviter,COUNT(*)ASNNFROMT1GROUPBYinviter)
SELECTKK.*,RANK_OVER()ASRNFROMKK
‘捌’ 怎么写一个sql语句来显示排名
在Sqlserver2005+中:
利用:Row_Number() over(order by chengji) 可以显示排名
--sql如句如下:
select*,row_number()over(orderbychengji)paimingfromStu
如有问题可以追问,我当及时回答。
希望能帮到你!
‘玖’ 用sql语句,查询每个班级成绩排名前三名的学生姓名
1、首先在打开的SQLServer中,假设有两条数据中,包含有【张】,但是这个张一前一后,如下图所示。
‘拾’ SQl语句查询排名分页
假设成绩表为score,score列为分数,stuno为学号,student表为学生信息表,sutno为学号,name为学生姓名,endNum和startNum是页码,需要前端传入;
SELECT * FROM (select row_.*, rownum start_rownum_ from (
sum(t.score) 总分,
t1.name 姓名
from score t,student t1
where t1.stuno=t.stuno
group by t1.name
order by t.stuno
) row_ WHERE rownum < #endNum# ) WHERE start_rownum_ >= #startNum#