⑴ sql:查询所有学生的学号、姓名、入学成绩、选课门数和平均分。结果要求显示如下
SQL语句如下:
select student.sno 学号,sname 姓名,sgrade 入学成绩,count(cno)选课门数,avg(grade)平均分
from student,score
where student.sno=score.sno
group by student.sno,sname,sgrade;
其中sno、sname、sgrade、cno、grade分别为:学号、姓名、入学成绩、回课程答号、成绩。以上SQL语句在Microsoft SQL Server 2005下测试通过。
⑵ 创建触发器trigger5,实现当向学生成绩表(xscj)中插入一条选课纪录时,查看该学生的
create trigger trigger5
AFTER INSERT ON xscj
FOR EACH ROW
BEGIN
selelct * from xscj
END
⑶ 已知数据库中有表:学生(学号,姓名,性别,年龄,班级)选课(学号,课程号,成绩)课程(课程号,课程
select a.id,a.name,a.class from student a where a.age>20;
select b.id,a.name ,a.class,b.scorefrom xuanke b inner join student a on b.kechengid='c1' and b.score>60;
select a.name,avg(b.score) from xuanke b inner join student a on b.score>70 order by(avg(b.score));
这些语句都不难,好好看版权看
⑷ 7、 以学生表和成绩表为数据源,建立名为“未选课学生查询”的嵌套查询,查询出学生的学号和姓名。所谓未
以下的sql语句可以参考一下:
select 学号,姓名
from 学生表
where 学号 not in ( select distinct 学号 from 成绩表 )
⑸ 跪求大神帮帮忙!!!有一个【学生选修课】数据库,数据库中包括三个表,学生表,课程表,成绩表
//自己把中文替换成英文字段名 我用的sql server数据库
select 学号、姓名、性别、年龄、所在系 from 学生 order by 年龄 desc, 学号 asc
select 学号,姓名 from 学生 where 姓名 in( select 姓名 from 学生 group by 姓名 having count(*)>1 )
update 成绩 set 成绩=0 where CNO=1
如果/不是除法的话 只是字符串 (除法暂时有问题)下班了 明天再来写
select C.课程号,D.课程名,D.成绩 from COURSE C,(
select CONVERT(VARCHAR(50),A.排名)+'/'+CONVERT(VARCHAR(50),B.ZS) as '排名/人数',a.学号,a.课程名,a.成绩 FROM (
select ROW_NUMBER() over(partition BY 课程名 order by 成绩 desc) as 排名 ,* from GRADE where 学号='1') A,
(SELECT COUNT(*) as zs,课程名
FROM GRADE group by 课程名 ) B where a.课程名=b.课程名) D WHERE C.课程名=D.课程名
⑹ SQL语句的一道题 三个基本表:学生表(Student)、课程表(Course)、学生选课表(SC)
老师留的作业吗?为你好,自己做吧。
⑺ 从学生表和选课成绩统计并显示每个学生学号,姓名,各科成绩之和用sol编码怎么
从学生表和选课成绩统计并显示每个学生学号,姓名,各科成绩之和用sol编码殖后期,勤开机,促进水产养殖对象生长
⑻ 从学生选课数据库中查询选修“数据库原理”课并且成绩在90分以上的学生名单,请写出SQL语句.
select sname from student
where sno in(
select a.sno from studentcourse a join course b
on a.cno=b.cno
where b.cname='数据库原理' and a.score>90)
select a.sclass as 班级,count(*) as 不及格人专数属 from
student a join studentcourse b
on a.sno=b.sno
where b.score<60
group by a.sclass
⑼ visual foxpro 中更新将grade表中选修课程编号为“08001”课程的学生的成绩加5
命令一:用替换命令
USE grade
REPLACE ALL 成绩 WITH 成绩+5 FOR 选修课程编号="08001"
命令二:用数据表记录专修改命属令
UPDATE grade SET 成绩=成绩+5 WHERE 选修课程编号="08001"
⑽ 数据库中现有学生表,选课表,成绩表,怎么删除大于18岁学生的所有选课信息
假设这3个表的结构如下:
学生表(学号,姓名,年龄,出生日期)
选课表(学号,课程号,课程名称)
成绩表(学号,课程号,成绩)
以上述表结构为前提,T-SQL语句如下:
delete 成绩表 where 学号 in (select 学号 from 学生表 where 年龄>18)
delete 选课表 where 学号 in (select 学号 from 学生表 where 年龄>18)
如果学生表中没有‘年龄’字段,只有‘出生日期’字段的话,T-SQL语句如下:
delete 成绩表 where 学号 in (select 学号 from 学生表 where datediff(yy,出生日期,getdate())>18)
delete 选课表 where 学号 in (select 学号 from 学生表 where datediff(yy,出生日期,getdate())>18)