当前位置: 首页 > news >正文

数据库原理与应用(基于MySQL):实验六数据查询

实验6.1

对学生实验数据库(stuexpm)的学生信息表(StudentInfo)和成绩信息表(Scorelnfo)进行信息查询,编写和调试查询语句的代码,完成以下操作

(1)使用两种方式查询Studentlnfo表的所有记录
①使用列名表。
② 使用*.

use stuexpm;select StudentID,Name,Sex,Birthday,Speciality,Address from studentinfo;
select * from studentinfo;


(2)查询Scorelnfo表的所有记录。

select * from scoreinfo;


(3)查询高等数学成绩低于90分的成绩信息,

select *
from scoreinfo
where CourseID='8001' and Grade<90;

(4)使用两种方式查询地址为上海市浦东区和成都市锦江区的学生的信息
① 使用 IN 关键字。
② 使用 OR 关键字。

select *
from studentinfo
where Address in('上海市浦东区','成都市锦江区');select *
from studentinfo
where Address='上海市浦东区' or Address='成都市锦江区';


(5)使用两种方式查询分数为90~95分的成绩信息。
①使用BETWEEN AND 关键字
②使用AND关键字和比较运算符

select *
from scoreinfo
where Grade between 90 and 95;select *
from scoreinfo
where Grade>=90 and Grade<=95;


(6)通过两种方式查询地址是北京的学生信息。
① 使用 LIKE 关键字。
② 使用 REGEXP 关键字。

select *
from studentinfo
where Address like '北京%';select *
from studentinfo
where Address regexp '^北京';


(7)查询每个专业有多少人。

select Speciality,count(*) as '人数'
from studentinfo
group by Speciality;


(8)查询高等数学的平均成绩、最高分和最低分

select avg(Grade) as average,max(Grade) as highest,min(Grade) as lowest
from scoreinfo
where CourseID='8001';


(9)将英语成绩按从高到低的顺序排列。

select *
from scoreinfo
where CourseID='1201'
order by Grade desc ;


(10)通过两种方式查询英语成绩第3~5名的信息
① 使用 LIMIT offset row count 格式。
② 使用 LIMIT row_count OFFSET offset 格式。


select *
from scoreinfo
where CourseID='1201'
order by Grade desc
limit 2 offset 2;select *
from scoreinfo
where CourseID='1201'
order by  Grade desc
limit 2 offset 2;

实验6.2

对学生实骏数据库(s1uexpm)的学生信息表(Studentlnfo)和成绩信息表(Scoreinin)行信息查询,编写和调试查询语句的代码,完成以下操作。
(1)对学生信息表和成绩信息表进行交叉连接,观察所有的可能组合

select *
from studentinfo,scoreinfo;


(2)查询每个学生选修课程的情况
①使用INNER JOIN 的显式语法结构。
②使用WHERE子句定义连接条件的隐式语法结构。

select s.StudentID,s.Name,s.Sex,s.Birthday,s.Speciality,s.Address,sc.Grade,sc.CourseID
from studentinfo s
inner join scoreinfo sc on s.StudentID=sc.StudentID;select s.StudentID,s.Name,s.Sex,s.Birthday,s.Speciality,s.Address,sc.Grade,sc.CourseID
from studentinfo s,scoreinfo sc
where s.StudentID=sc.StudentID;


(3)采用自然连接查询每个学生选修课程的情况。

select s.StudentID,s.Name,s.Sex,s.Birthday,s.Speciality,s.Address,sc.Grade,sc.CourseID
from studentinfo s
natural join scoreinfo sc;


(4)查询源程不同、成绩相同的学生的学号、课程号和成绩。
①使用INNE JOIN的显式语法结构。
②使用WHERE子旬定义连接条件的隐式语法结构,

select a.StudentID,a.CourseID,a.Grade
from scoreinfo a
inner join scoreinfo b
on a.Grade=b.Grade and a.StudentID<>b.StudentID;select a.StudentID,a.CourseID,a.Grade
from scoreinfo a,scoreinfo b
where a.Grade=b.Grade and a.StudentID<>b.StudentID;


(5)查询选修1004课程的学生的姓名、性别和成绩

select s.Name,s.Sex,sc.Grade
from studentinfo s
inner join scoreinfo sc on s.StudentID=sc.StudentID
where sc.CourseID='1004';


(6)查询逸修了8001课程且为计算机专业学生的姓名及成绩,查出的成绩按降序排列

select s.Name,sc.Grade
from studentinfo s
inner join scoreinfo sc on s.StudentID=sc.StudentID
where sc.CourseID='8001' and s.Speciality='计算机'
order by sc.Grade desc;


(7)查御地址为上海市浦东区的学生的姓名专业、课程号和成绩

select s.Name,s.Speciality,sc.CourseID,sc.Grade
from studentinfo s
inner join scoreinfo sc on s.StudentID=sc.StudentID
where s.Address='上海市浦东区';


(8)查询8001课程的成绩高于4002课程成绩的学生。


select s.StudentID,s.Name,sc1.Grade as Grade_8001,sc2.Grade as Grade_4002
from scoreinfo sc1
inner join scoreinfo sc2 on sc1.StudentID=sc2.StudentID
inner join studentinfo s on s.StudentID=sc1.StudentID
where sc1.CourseID='8001' and sc2.CourseID='4002' and sc1.Grade>sc2.Grade;


http://www.mrgr.cn/news/53631.html

相关文章:

  • TwinCAT3下位机配置EAP通讯传递与接收变量
  • 算法的学习笔记—数组中的逆序对(牛客JZ51)
  • 即时通讯 离线消息处理初版
  • 群晖通过 Docker 安装 Gitea
  • ubuntu重启后显示不出图形界面
  • AcWing 875:快速幂
  • rpm 命令
  • PPT自动化:如何判断PPT中的shape类型(python-pptx中常见shape类型及其代码速查表)
  • 【学习笔记】理解 C++ 中 reinterpret_cast 和 C 风格类型转换的区别
  • 动态分层强化学习(DHRL)算法详解
  • 西门子嵌入式面试题及参考答案(万字长文)
  • 【SpringBoot系列】SpringBoot中集成日志的几种方式?
  • JavaWeb 开发指南
  • JavaWeb 23.一文速通npm的配置和使用
  • 【代码模板】如何用Python脚本执行shell命令并且获取命令的输出?(subprocess.Popen,subprocess.check_output)
  • TryHackMe 第8天 | Web Fundamentals (三)
  • 如何安全运行别人上传的Python代码?
  • 题目 3161: 蓝桥杯2023年第十四届省赛真题-子矩阵
  • kubernetes(三)
  • 勤于奋身体倒下还是上来回答粉丝关于Adsense赚美金
  • 设计模式之设计模式分类
  • ESP32-IDF 通用定时器 GPTimer
  • LeetCode题练习与总结:拼接最大数--321
  • 小白学大模型 RAG:GraphRAG 概念、组成和流程,看完这一篇你就懂了!!
  • 出手!快手可灵开源版,AI视频生成整合包!
  • 84.【C语言】数据结构之顺序表的头部插入和删除