表一:xs(学生)

USE xscj
SELECT * FROM xs
INSERT into xs VALUES
('081101','王林','计算机',1,'1990-02-10',50,'null','null'),
('081102','程明','计算机',1,'1991-02-01',50,'null','null'),
('081103','王燕','计算机',0,'1989-10-06',50,'null','null'),
('081104','韦严平','计算机',1,'1990-08-26',50,'null','null'),
('081106','李方方','计算机',1,'1990-11-20',50,'null','null'),
('081107','李明','计算机',1,'1990-02-01',54,'null','提前修完《数据结构》'),
('081108','林一帆','计算机',1,'1989-08-05',52,'null','已提前修完一门课'),
('081109','张强民','计算机',1,'1989-08-11',50,'null','null'),
('081110','张蔚','计算机',0,'1991-07-22',50,'null','三好学生'),
('081111','赵琳','计算机',0,'1990-03-18',50,'null','null'),
('081113','严红','计算机',0,'198-08-11',48,'null','有一门功课不及格,待补考'),
('081201','王敏','通信工程',1,'1989-06-10',42,'null','null'),
('081202','王林','通信工程',1,'1989-01-29',40,'null','有一门课不及格,待补考')

表二:kc(课程)

SELECT * FROM kc
INSERT into kc VALUES
("101","计算机基础",1,80,5),
("102","程序设计与语言",2,68,4),
("206","离散数学",4,68,4),
("208","数据结构",5,68,4),
("209","操作系统",6,68,4),
("210","计算机原理",5,85,5),
("212","数据库原理",7,68,4),
("301","计算机网络",7,51,3),
("302","软件工程",7,51,3)

表三:xs_kc(课程编号)

SELECT * FROM xs_kc
INSERT into xs_kc VALUES
("081101",101,80,5),
("081101",102,78,4),
("081101",206,76,4),
("081102",102,78,4),
("081102",206,78,4),
("081103",101,62,5),
("081103",102,70,4),
("081103",206,81,4)

---对XSCJ数据库完成以下查询;

---24、查找选修了206课程且成绩在80分以上的学生姓名及成绩。

SELECT xs.姓名,xs_kc.成绩 FROM xs INNER JOIN
xs_kc ON xs.学号=xs_kc.学号 AND xs_kc.成绩 > 80  AND  xs_kc.课程号=206

---25、查找选修了“计算机基础”课程且成绩在80分以上的学生学号、姓名、课程名及成绩。

SELECT xs.学号,xs.姓名,kc.课程名,xs_kc.成绩 FROM xs,xs_kc INNER JOIN
kc ON xs_kc.课程号=kc.课程号 AND kc.课程名='计算机' AND xs_kc.成绩 >80

---26、查找课程不同、成绩相同的学生的学号、课程号和成绩。

SELECT a.学号,a.课程号,b.课程号,a.成绩 FROM xs_kc a JOIN xs_kc b
ON a.成绩=b.成绩 and a.学号=b.学号 and a.课程号!=b.课程号

---27、查找KC表中所有学生选过的课程名。

select distinct 课程名 from kc join sell using(学号)

---28、查找所有学生情况及他们选修的课程号,若学生未选修任何课,也要包括其情况。

SELECT xs_kc.*,课程号 FROM xs JOIN xs_kc WHERE xs.'学号'=xs_kc.'学号'

---29、查找被选修了的课程的选修情况和所有开设的课程名。

---30、查找选修了课程号为206课程的学生的姓名、学号。

SELECT 姓名,xs.学号 FROM xs,xs_kc WHERE xs.学号=xs_kc.学号 AND xs_kc.课程号=206

---31、查找未选修离散数学的学生的姓名、学号和专业名。

SELECT 姓名,xs.学号,专业名 FROM xs,kc,xs_kc WHERE
xs.学号=xs_kc.学号 AND kc.课程号=xs_kc.课程号 AND kc.课程号<>206

---32、查找选修了离散数学的学生学号。

SELECT 姓名,xs.学号 FROM xs,kc,xs_kc WHERE
xs.学号=xs_kc.学号 AND kc.课程号=xs_kc.课程号 AND kc.课程名='离散数学'

---33、查找XS表中比所有计算机系的学生年龄都大的学的学号、姓名、专业名和出生日期。

---34、查找XS_KC表中课程号206的成绩不低于课程号101的最低成绩的学生的学号。

SELECT 学号,成绩 FROM xs_kc WHERE
xs_kc.课程号=206 and xs_kc.成绩>=(SELECT MIN(成绩) from xs_kc)

---35、查找选修206号课程的学生姓名。

SELECT 姓名 FROM xs,kc,xs_kc WHERE
xs.学号=xs_kc.学号 AND kc.课程号=xs_kc.课程号 AND kc.课程号=206

---36、将XS中各专业名输出。

select 专业名 from xs group by 专业名

---37、求XS中各专业的学生数。

select 专业名,count(*)'总人数' from xs group by 专业名

---38、求被选修的各门课程的平均成绩和选修该课程的人数。

select 课程号,avg(成绩)'平均成绩',count(课程号)'人数' from xs_kc group by 课程号

---39、在XSCJ数据库上产生一个结果集,包括每个专业的男生人数、女生人数、总人数,以及学生总人数。

select 专业名,性别,count(*)as"人数" from xs group by 专业名,性别 with rollup

---40、查找平均成绩在85分以上的学生的学号和平均成绩。

select 学号,avg(成绩)'平均成绩' from xs_kc group by 学号 having avg(成绩)>85

---41、查找选修课程超过2门且成绩都在80分以上的学生的学号。

select 学号 from xs_kc where 成绩>80 group by 学号 having count(*)>2

---42、将通信工程专业的学生按出生日期先后排序。

select * from xs order by 出生日期 having 专业名='通信工程'

---43、将计算机专业学生的“计算机基础”课程成绩按降序排列。

select * from xs order by 出生日期 having 专业名='计算机'

---44、将计算机专业学生按其平均成绩排列。

select * from xs order by avg(成绩) having 专业名='计算机'

---45、查找XS表中学号最靠前的5位学生的信息。

select * from xs group by 学号 limit 5

---46、查找XS表中从第4位同学开始的5位学生的信息。

select * from xs limit 3,1

MySQL:数据库练习题-3相关推荐

  1. 六、MySQL 数据库练习题1(包含前5章练习题目及答案)

    文章目录 一.数据库概述练习题 二.MySQL 环境搭建练习题 三.查询练习 MySQL 数据库练习题(包含前5章所有知识点及答案) 前置知识: 一.数据库开发与实战专栏导学及数据库基础概念入门 二. ...

  2. MySQL 数据库练习题记录01

    文章目录 前言 一.数据库练习题一 1.1 表结构 1.2 查询所有学生的信息(学号,姓名,性别,班级名称) 1.3 查询所有人(包括没有成绩的学生)的课程分数(学号,姓名,性别,班级名称,语文分数, ...

  3. mysql存储过程练习题,2016年计算机二级考试MySQL数据库练习题模拟

    一.编程题 在数据库db_test中创建一个存储过程,用于实现给定表content中一个留言人的姓名即可修改表content中该留言人的电子邮件地址为一个给定的值. 二.简答题 1.请解释什么是存储过 ...

  4. MySQL 数据库 练习题

    一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...

  5. MySQL:数据库练习题-1

    表一:employees USE yggl SELECT * FROM employees INSERT into employees VALUES ('102201','刘明','本科',19721 ...

  6. Mysql数据库练习题之商品库

    设有如下所示的三个关系模式: 商店Shop(Sno,Sname,City)//Sno (商店编号).Sname (商店名).City (所在城市) Sno和Sname为联合主键 商品Product(P ...

  7. mysql中商品与商店关系,Mysql数据库练习题之商品库

    设有如下所示的三个关系模式: 商店Shop(Sno,Sname,City)//Sno (商店编号).Sname (商店名).City (所在城市) Sno和Sname为联合主键 商品Product(P ...

  8. mysql数据库作业_mysql数据库操作练习

    mysql数据库练习题 温馨提示:多刷新表! ​ 多刷新表!!! ​ 多刷新表!!!!! 1查询每个 学生成绩大于60且成绩总和小于200的班级编号以及成绩和并根据成绩和降序 update sg se ...

  9. MySQL数据库入门学习教程(mysql基础+高级)

    今天这篇文章将详细列出Mysql的学习流程,这是学习mysql数据库前你要了解的~~~ 大部分的小伙伴自己在网上找mysql资料.还有数据库的视频教程,但是都过于碎片化,没有体系,导致大家不知道如何系 ...

  10. MySQL数据库总结

    文章目录 一.数据库简介 二.MySQL数据类型(5.5版本) 三.Sql语句 (1)Sql语句简介 (2)数据定义语言DDLcreate,alter,drop (3)数据操纵语言DMLupdate, ...

最新文章

  1. html文本域应该写在哪,我们如何在pharo上填写html文本区域
  2. 一台计算机如何创建多个用户,一台电脑怎么管理多个腾讯视频号
  3. html 360shiyanshi,360发布国内首个HTML5实验室 4大特性抢先测
  4. italic与oblique的区别
  5. exchange 2010 集线器(hub)外发邮件的配置
  6. LVS+OSPF 架构
  7. 深入理解闭包系列第五篇——闭包的10种形式
  8. 15款优雅的 WordPress 电子商务网站主题
  9. (转)问题: Oracle Database 10g 未在当前操作系统中经过认证
  10. python求解典型相关系数_三大相关系数: pearson, spearman, kendall(python示例实现)...
  11. web前端的十种jquery特效及源码下载
  12. linux 如何看图软件,深度看图(linux看图软件) v1.2 官方最新版
  13. matlab绘图工具
  14. B站五面面经(附过程、答案)
  15. 关于时钟晶振  速率  倍频
  16. YDOOK: ANSYS Maxwell 19 教程20:Maxwell 2D Surface Approximation 网格划分
  17. linux克隆机器IP问题
  18. 8个酷炫的GitHub技巧
  19. Python框架篇:结构化的网页抓取框架-Scrapy
  20. 实时视频传输的关键技术 H.264 全解析

热门文章

  1. linux自动切换网,linux使用shell自动切换网关
  2. Java基本数据类型及对应包装类
  3. 地图上导出坐标html文件格式,【教程】奥维地图如何导出含坐标的高清tiff影像图,实现ArcGIS加载使用...
  4. js利用CLodop实现打印功能
  5. 常用z变换及其收敛域
  6. 南邮计算机考研复试经验,南邮学长复试经验谈(blue原创出品,必是精品)
  7. Android怎么改图标都不生效安卓开发如何修改APP图标和名字
  8. GoComb.com搜索引擎问世:改进搜索体验
  9. html如何改变日期样式,html如何修改日期样式
  10. eversync safari_印象笔记 Evernote 同步插件 for WordPress