Ⅰ sql求每个学生平均成绩
selects,学号,s,姓名,c,课程名,t,平均成绩
fromstudentass
leftjion
(
selectavg(成绩)as平均成绩,学号
fromscgroupby学号
)astont,学号=s,学号
leftjoinsconsc。学号=s,学号
leftjoincourseasconc。课程号=sc,课程号
功能:
SQL具有数据定义、数据操纵和数据控制的功能。
1、SQL数据定义功能:能够定义数据库的三级模式结构,即外模式、全局模式和内模式结构。在SQL中,外模式又叫做视图(View),全局模式简称模式(Schema),内模式由系统根据数据库模式自动实现,一般无需用户过问。
2、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实现按总成绩倒叙排列。
(2)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语言输入,查找成绩在70到80分之间的学生的学习情况
我先假定你有一个数据库,表名叫student_score,成绩是score,学习情况是study(如果不只一个字段你自行添加吧)
select study from student_score where score > 70 and score < 80;
Ⅳ sql怎么写统计各分数段的人数
sql怎么写统计各分数段的人数
select count(case 分数字段 when 100 then 1 end) as [满分],
count(case when 分数字段 between 90 and 99 then 1 end) as[90-99分],
count(case when 分数字段 between 80 and 89 then 1 end) as[80-89分],
count(case when 分数字段 between 70 and 79 then 1 end) as[70-79分],
count(case when 分数字段<70 then 1 end) as[70分以下]
from 学生分数表
Ⅳ 怎么用SQL的查询语句列出某同学所有课程的课程名和成绩啊,并按成绩从低到高排序啊
1、打开Microsoft SQL Server 2012,选中需要查询所有表的数据库。
Ⅵ sql语句列出成绩在80分到100分之间的学生名单
select * from 学生表 where 学生表主键id in (select 学生表学生id from 成绩表 where 成绩字段 between 80 and 100)
或
select * from 学生表 where 学生表主键id in (select 学生表学生id from 成绩表 where 成绩字段>=80 and 成绩字段<=100)
Ⅶ 是否可以用sql语句实现分数的分段人数统计
--结果一条记录的方法
select sum(case when score<10 then 1 else 0 end) as [0-10],
sum(case when score>=10 and score<20 then 1 else 0 end) as [10-20],
sum(case when score>=20 and score<30 then 1 else 0 end) as [20-30],
sum(case when score>=30 and score<40 then 1 else 0 end) as [30-40],
....
from student_score
Ⅷ sql怎么统计某一课程的各分数段的人数(在php程序里)
实现上面sql查询结果的记录总数
$sql = select count(C.`cid`) as `c` from (select * from `ctable` group by pid) as C left join `ptable` as P on P.`pid` = C.`pid`;
详解,此语句用到了sql子查询,先使用子查询对ctable进行分组查询,然后对分组后的结果集进行统计.
Ⅸ sql语句的使用——查询每个学生的总分和平均分,有一张表
select sum(grade)总成绩,avg(grade) 平均成绩from sc where sno in(select sno from sc where sno in('1001','1002','1003','1004','1005'))
Ⅹ 如何用sql语句查出学生表成绩小于60为不及格60-80为良好80-90为优秀
select name,case when 成绩<60 then 不及格 when 成绩>=60 and 成绩<80 then 良好 when 成绩>=0 and 成绩<90 then 优秀 end as 成绩情况 ,from 表名。
注意,在输入sql语句的时候,要在英文环境下输入。否则可能会出现代码不识别。