题1、根据要求书写SQL语句题1.1、删除表的重复记录(如果记录完全相同才算重复记录,请书写此种情况下的SQL语句;(如果有id主键(数字,自增1模式),请书写此种情况下的SQL语句。题1.2、已知三张表:表S:(SNO,SNAME)学生表,SNO为学号,SNAME为姓名;表C:(CNO,CNAME,CTEACHER)课程表,CNO为课程号,CNAME为课程名,CTEACHER为任课教师;表SC:(SNO,CNO,SCGRADE)选课表,SNO为学号,CNO为课程号,SCGRADE为成绩。要求实现如下3个处理:(找出没有选修过“李明”老师讲授课程的所有学生姓名;(列出“001”号课成绩比“002”号课成绩分数高的所有学生的学号;(列出“001”号课成绩比“002”号课成绩分数高的所有学生的学号及其“001”号课程和“002”号课程的成绩。
1个回答
关注
展开全部
咨询记录 · 回答于2022-03-18
题1、根据要求书写SQL语句题1.1、删除表的重复记录(如果记录完全相同才算重复记录,请书写此种情况下的SQL语句;(如果有id主键(数字,自增1模式),请书写此种情况下的SQL语句。题1.2、已知三张表:表S:(SNO,SNAME)学生表,SNO为学号,SNAME为姓名;表C:(CNO,CNAME,CTEACHER)课程表,CNO为课程号,CNAME为课程名,CTEACHER为任课教师;表SC:(SNO,CNO,SCGRADE)选课表,SNO为学号,CNO为课程号,SCGRADE为成绩。要求实现如下3个处理:(找出没有选修过“李明”老师讲授课程的所有学生姓名;(列出“001”号课成绩比“002”号课成绩分数高的所有学生的学号;(列出“001”号课成绩比“002”号课成绩分数高的所有学生的学号及其“001”号课程和“002”号课程的成绩。
阐述一点
六轮咨询服务限一个问题
可以就问题不理解的地方进行交流
你的这个超出六轮咨询服务范围
可以转无限轮咨询 帮您彻底解决
(列出“001”号课成绩比“002”号课成绩分数高的所有学生的学号及其“001”号课程和“002”号课程的成绩。
就这一个
麻烦帮写一下语句
稍等
代码如下
select distinct SC1.S#from SC SC1 join SC SC2 on SC1.S#=SC2.S#where SC1.C#='001' and SC2.C#='002' and SC1.Score>SC2.Score
希望对您有所帮助
祝您生活愉快
是列出所有学生的学号以及那俩个课程的成绩,您给我发的只是学号呀
这也只是学号吧,没有成绩呀
成绩赋值表内 从表内选择输出 这里的编程确实少了一部分
但是输入法编辑不了编程语言
所以才截图给你
a.s#是学习001学生的学号。b.s#是学习002学生的学号。##因为是比较001比002成绩高的学生学号,因此,必须拿到001和002学生的成绩和学号。并且a.score>b.score;并且,他俩的学号必须相同,说明满足a.score>b.score的是同一个人。然后,查询出这个a.s#这个人的学号。
a.必须满足001/ 002的分数,和学习课程的学号。b.这个学生必须是一个人。学号c.学生成绩筛选 scored.同一个人,001成绩大于002成绩e.筛选出的成绩 a.score。
select a.sid, a.score as score1,b.score as score2 from (select * from scoretable where cid='001') aleft join(select * from scoretable where cid='002')bon a.sid=b.sidwhere a.score>b.score
这个也是只有学号没有成绩呀,麻烦您给我一条既能列出学号又能列出成绩的语句
Student(s_no,sname,age,sex) 学生表 Course(c_no,cname,t_no) 课程表 SC(s_no,c_no,score) 成绩表 Teacher(t_no,Tname) 教师表 1.查询“001”课程比“002”课程成绩高的所有学生的学号; select a.s_no from SC a, SC b where a.c_no='001' and b.c_no='002 and a.s_no=b.s_no and a.score > b.score;2.查询平均成绩大于60分的同学的学号和平均成绩;select s_no,avg(score) from SC group by s_no having avg(score) > 60;
结合一下
因为平台输入法确实没办法编辑编程语言
只能帮您找到类似进行参考
上面两条结合