查询

查询《数据库结构-1》的所有考试结果,并按成绩由高到低排列
查询 r.学生成绩,sub.科目名字 在r表查询 用内联连接 sub表 ON r.课程编号=sub.课程编号 where 判断sub.科目编号=数据库结构-1匹配的用r的学生成绩的进行高到低排序
SELECT r.StudentResult,sub.SubjectName FROM result r INNER
JOIN subject sub ON r.SubjectNo=sub.SubjectNo
WHERE sub.SubjectName=”数据库结构-1” ORDER BY r.StudentResult;

查询所有课程《数据库结构-2》的考试成绩,并按照由高到低的显示,同时把该成绩对应的学生的学号、姓名打印出来

查询 s.学生编号和名字,r的学生成绩,sub。科目名在s表进行内联连接查询r 表 s。学生编号=r.学生编号 r再进行内联sub表 on r.科目编号=sub.科目编号 where 判断sub.科目名字=数据库结构-2匹配r.的学生成绩进行高低排序
SELECT s.StudentNo,s.StudentName,r.StudentResult,sub.SubjectName FROM student s
INNER JOIN result r ON s.StudentNo=r.StudentNo INNER JOIN subject sub ON
r.SubjectNo=sub.SubjectNo WHERE sub.SubjectName=”数据库结构-2” ORDER BY r.StudentResult DESC;

查询《C语言1》的前5名学生成绩信息

查询 r.的成绩 sub.科目名字查找r表 用内联连接 sub表 ON r.的编号=sub.科目编号 where sub.科目名称=C 语言-1 用limit0,5查询
SELECT r.StudentResult,sub.SubjectName FROM result r INNER JOIN subjectsub
ON r.SubjectNo=sub.SubjectNo WHERE sub.SubjectName=”C语言-1” LIMIT 0,5;

按照不同的课程,分别算出其平均分、最高分和最低分,对于低于60分平均分的不予显示

搜索sub.的课程名,max(最高分) 左联接sub表 sub.编号=r.课程编号用groupby排序
再用having 过滤平均分(低于60分)不显示
select sub.SubjectName,max(r.StudentResult)as “最高分”,min(r.StudentResult) as “最低分”,
avg(r.StudentResult) as “平均分” from result r left join subject sub
on sub.SubjectNo=r.SubjectNo group by r.SubjectNo having avg(r.StudentResult)<60;

/查询密码长度不足6位的学员信息(学员编号、姓名、密码、年级名称)/
查询学员编号、姓名、密码、年级名称用内联连接g表 用s.年级id=g年纪id查找
SELECT s.StudentNo,s.StudentName,s.LoginPwd,g.Gradeid FROM student s INNER JOIN grade g
ON s.GradeID=g.Gradeid WHERE LENGTH(s.LoginPwd)<6;

*查找郑环环所有考试的成绩(科目名称、考试成绩)
SELECT s.StudentName,r.StudentResult,sub.SubjectName FROM student s INNER JOIN result r
ON s.StudentNo=r.StudentNo
INNER JOIN subject sub ON r.SubjectNo=sub.SubjectNo WHERE s.StudentName=”郭靖”;

使用表连接方式查询所有U1年级学员学号、姓名及年级名称*
SELECT s.StudentNo,s.StudentName,g.GradeName FROM student s INNER JOIN grade g ON
s.GradeId=g.GradeID WHERE g.GradeId>=1;

/使用表连接方式查询“Java”课程至少一次考试刚好等于60分的学生姓名/
SELECT s.StudentNo,s.StudentName,r.StudentResult,sub.SubjectName FROM student s INNER JOIN result r ON s.StudentNo=r.StudentNo
INNER JOIN subject sub ON r.SubjectNo=sub.SubjectNo WHERE sub.SubjectName=”JAVA第一学年” AND r.StudentResult=60;

/使用子查询方式查询“Java”课程至少一次考试刚好等于60分的学生

SELECT s.studentNo,studentName FROM student s WHERE s.studentNo IN(
SELECT r.studentNo FROM result r WHERE r.subjectNo IN(
SELECT sub.SubjectNo FROM subject sub WHERE sub.subjectName=”JAVA第一学年”
) AND r.StudentResult=60
)

使用子查询方式+表连接方式混合查询“Java”课程至少一次考试刚好等于60分的学生/
SELECT s.studentNo,studentName , r.studentNo FROM student s INNER JOIN result r ON s.StudentNo=r.StudentNo WHERE r.subjectNo IN(
SELECT sub.SubjectNo FROM subject sub WHERE sub.subjectName=”JAVA第一学年”
) AND r.StudentResult=60

用两种方式对数据库进行备份与恢复
备份:
SELECT * INTO OUTFILE “D:\test.sql” fields terminatedby ‘,’ lines terminatedby ” from category ;
DOS 命令:mysqldump -hhostname -uusername -ppassword databasename > ‘backupfile’

恢复:
BACKUPTABLE test_tableto ‘D:\backup’;
mysql -hhostname -uusername -ppassword databasename < ‘backupfile

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值