设有3个关系:

S(S#,SNAME,SEX,AGE)

SC(S#,C#,GRADE)

C(C#,CNAME,TEACHER)

试用SQL语句完成下列大题1~4的任务:

用数据定义语言DDL定义上述三个表,请为每个属性定义适当的数据类型,宽度(和精度),每个表上的主键、外键以及完整性约束。

1,把这个sql文件导入本地,桌面建一个XX.sql文件,用记事本打开,把这个复制进去。然后用语句导入到自己的本地数据库,这里用的是mysql,Navicat

/*
Navicat MySQL Data Transfer
Date: 2022-03-15 21:34:47
*/SET FOREIGN_KEY_CHECKS=0;-- ----------------------------
-- Table structure for `c`
-- ----------------------------
DROP TABLE IF EXISTS `c`;
CREATE TABLE `c` (`c` int(11) NOT NULL,`cname` varchar(255) DEFAULT NULL,`teacher` varchar(255) NOT NULL,PRIMARY KEY (`c`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;-- ----------------------------
-- Records of c
-- ----------------------------
INSERT INTO `c` VALUES ('1', 'java', 'LIU');
INSERT INTO `c` VALUES ('2', 'python', 'LI');
INSERT INTO `c` VALUES ('3', 'html', 'XU');-- ----------------------------
-- Table structure for `s`
-- ----------------------------
DROP TABLE IF EXISTS `s`;
CREATE TABLE `s` (`s` int(11) NOT NULL AUTO_INCREMENT,`sname` varchar(255) NOT NULL,`sex` varchar(10) NOT NULL,`age` int(11) NOT NULL,PRIMARY KEY (`s`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;-- ----------------------------
-- Records of s
-- ----------------------------
INSERT INTO `s` VALUES ('1', 'WANG', 'male', '20');
INSERT INTO `s` VALUES ('2', 'ZHANGYU', 'male', '24');
INSERT INTO `s` VALUES ('3', 'ZHAO', 'female', '18');
INSERT INTO `s` VALUES ('4', 'YI', 'male', '25');
INSERT INTO `s` VALUES ('5', 'FANG', 'female', '21');
INSERT INTO `s` VALUES ('6', 'ZHANGFRI', 'female', '18');-- ----------------------------
-- Table structure for `sc`
-- ----------------------------
DROP TABLE IF EXISTS `sc`;
CREATE TABLE `sc` (`s` int(11) NOT NULL,`c` int(11) DEFAULT NULL,`grade` float DEFAULT NULL,KEY `s` (`s`),KEY `c` (`c`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;-- ----------------------------
-- Records of sc
-- ----------------------------
INSERT INTO `sc` VALUES ('1', '1', '80');
INSERT INTO `sc` VALUES ('1', '2', '88');
INSERT INTO `sc` VALUES ('2', '1', '79');
INSERT INTO `sc` VALUES ('2', '2', '81');
INSERT INTO `sc` VALUES ('3', '3', '86');
INSERT INTO `sc` VALUES ('4', '2', '85');
INSERT INTO `sc` VALUES ('4', '3', '87');
INSERT INTO `sc` VALUES ('5', '1', '95');
INSERT INTO `sc` VALUES ('3', '1', '82');
INSERT INTO `sc` VALUES ('1', '3', '77');
INSERT INTO `sc` VALUES ('4', '1', '66');
INSERT INTO `sc` VALUES ('6', '1', '78');

在1题的基础是,用SELECT语句完成下列查询。

(1)检索LIU老师所授课程的课程号和课程名;

(2)检索年龄大于23的男同学的学号和姓名;

(3)检索学号为S3的学生所学课程的课程名与任课老师;

(4)检索至少选修LIU 老师所授课程中一门课程的女学生的姓名;

(5)检索WANG同学不学课程的课程号;

(6)检索至少选修2门课的学生的学号;

(7)检索全部学生都选修的课程的课程号和课程名;

(8)检索选修课程包含LIU老师所授全部课程的学生的学号;

(9)检索所有姓张的学生;

(10)查询每个学生的平均成绩;

(11)查询平均成绩大于等于80分的学生的学号和姓名。

(12)查询平均成绩第一名的学生的学号和姓名。

1、select c,cname from C where teacher='LIU';+---+-------+| c | cname |+---+-------+| 1 | java  |+---+-------+
2、 select s,sname,sex,age from S where sex='male' and age>23;+---+-------+------+-----+| s | sname | sex  | age |+---+-------+------+-----+| 2 | ZHANG | male |  24 || 4 | YI    | male |  25 |+---+-------+------+-----+
3、 select cname,teacher from SC join C on SC.c=C.c and SC.s=3;+-------+---------+| cname | teacher |+-------+---------+| java  | LIU     || html  | XU      |+-------+---------+
4、select distinct sname,sex,cname from S,SC,C where sex='female' and teacher='LIU';+-------+--------+-------+| sname | sex    | cname |+-------+--------+-------+| ZHAO  | female | java  || FANG  | female | java  |+-------+--------+-------+
5、select c from C where not exists(select * from S,SC where S.s=SC.s and SC.c=C.c and sname='WANG');+---+| c |+---+| 3 |+---+
6、 select s from SC group by s having count(*)>1;+---+| s |+---+| 1 || 2 || 3 || 4 |+---+
7、select c,cname from C where not exists(select * from S where not exists(select * from SC where s=S.s and c=C.c));+---+-------+| c | cname |+---+-------+| 1 | java  |+---+-------+
8、select  distinct s,c,grade from SC x where not exists(select * from C where teacher='LIU' and not exists(select * from SC y where y.s=x.s and x.c=c.c));+---+------+-------+| s | c    | grade |+---+------+-------+| 1 |    1 |    80 || 2 |    1 |    79 || 5 |    1 |    95 || 3 |    1 |    82 || 4 |    1 |    66 || 6 |    1 |    78 |
+---+------+-------+
9、 select sname from S where sname like 'ZHANG%';+----------+| sname    |+----------+| ZHANGYU  || ZHANGFRI |+----------+
10、select avg(grade),s from SC group by s;+-------------------+---+| avg(grade)        | s |+-------------------+---+| 81.66666666666667 | 1 ||                80 | 2 ||                84 | 3 || 79.33333333333333 | 4 ||                95 | 5 ||                78 | 6 |+-------------------+---+
11、select S.s,sname,avg(grade) from S join SC on S.s=SC.s group by s having avg(grade)>=80;+---+---------+-------------------+| s | sname   | avg(grade)        |+---+---------+-------------------+| 1 | WANG    | 81.66666666666667 || 2 | ZHANGYU |                80 || 3 | ZHAO    |                84 || 5 | FANG    |                95 |+---+---------+-------------------+
12、select avg(grade),SC.s,sname from SC,S where SC.s=S.s group by s limit 1;+-------------------+---+-------+| avg(grade)        | s | sname |+-------------------+---+-------+| 81.66666666666667 | 1 | WANG  |+-------------------+---+-------+

(1)请创建选修LIU老师所带课程的学生视图,视图包括:学号、姓名、性别、课程号、课程名、成绩。

(2)创建所有男生的视图。

(3)创建所有学生的选课视图,视图包括:学号、姓名、性别、课程号、课程名、成绩。

(4)创建学生平均成绩的视图,视图包括:学号、姓名和平均成绩。

1、create view LIU_student as select sf.Sno,sf.SNAME,sf.SEX,kc.Cno,kc.CNAME,cj.grade from s sf join sc cj on sf.Sno=cj.Sno join c kc on kc.Cno=cj.Cno where kc.teacher='LIU'2、create view LIU_student as select sf.Sno,sf.SNAME,sf.SEX,kc.Cno,kc.CNAME,cj.grade from s sf join sc cj on sf.Sno=cj.Sno join c kc on kc.Cno=cj.Cno where sf.SEX='男'3、create view LIU_student as select sf.Sno,sf.SNAME,sf.SEX,kc.Cno,kc.CNAME,cj.grade from s sf join sc cj on sf.Sno=cj.Sno join c kc on kc.Cno=cj.Cno 4、create view avg_student as select sf.Sno,sf.SNAME,ROUND(avg(cj.grade)) from s sf LEFT join sc cj on sf.Sno=cj.Sno GROUP BY sf.Sno

整理的自己的作业题,有不合适的 语句欢迎同学们一起交流一下。一起进步。

数据库系统概论第三章学习通作业(建表、查询、修改、删除、视图)相关推荐

  1. 计算机网络第三章学习通题目及答案

    计算机网络第三章 目录 计算机网络第三章 点对点信道概述 数据链路层的三个基本问题是什么?为什么必须解决?怎么解决? 封装成帧 透明传输 差错检测 第五次练兵 局域网的数据链路层 组建无线局域网 CS ...

  2. 数据库系统概论 第三章 第五大题 实验报告

    实验目标: 根据课本p71提供的表格,实现p130第五大题的问题,理解和掌握关系数据库标准SQL语言,能够熟练使用SQL语言完成各种数据库操作和管理任务.包括使用SQL DDL语句创建.更改和删除数据 ...

  3. 数据库系统概论-第三章 关系数据库标准语言 SQL

    概述 SQL的特点 综合统一 SQL集数据定义语言,数据操纵语言,数据控制语言的功能于一体,语言风格统一,可以独立完成数据库生命周期中的全部活动,可以执行以下一系列要求: 定义和修改.删除 关系模式 ...

  4. Spark学习-SparkSQL--03-SparkSQL CLI 建表查询出问题

    1. 拷贝配置hive-site.xml 在运行Spark SQL CLI中需要使用到Hive Metastore,故需要在Spark中添加其uris.具体方法是拷贝hive的配置文件hive-sit ...

  5. 数据库系统概论(第5版)学习笔记第1章 1.2——数据模型

    数据库系统概论(第5版)学习笔记第1章 1.2--数据模型 目录 数据库系统概论(第5版)学习笔记第1章 1.2--数据模型 0.思维导图(自制) 1️⃣思维导图下载 2️⃣图示 1.2数据模型 1. ...

  6. 《数字图像处理》第三章学习总结感悟2:直方图处理

    ☞ ░ 前往老猿Python博文目录 https://blog.csdn.net/LaoYuanPython ░ 一.引言 在2021年6月22日发布<<数字图像处理>第三章学习总结 ...

  7. 工程伦理第三章学习笔记2020最新

    工程伦理第三章学习笔记2020最新 因为之前自己在网上找答案总是觉得费劲,一道一道的找,很慢,突然找到了前两章的答案,感觉有一种前人种树后人乘凉的感觉,于是自己在艰难找完第三章习题并全对的情况下,将题 ...

  8. 多维随机变量及其分布——《概率论及其数理统计》第三章学习笔记

    多维随机变量及其分布--<概率论及其数理统计>第三章学习笔记 文章目录 多维随机变量及其分布--<概率论及其数理统计>第三章学习笔记 前言 MindMap 二维随机变量 定义与 ...

  9. 周志华西瓜书第三章学习笔记

    第三章学习笔记 文章目录 第三章学习笔记 1.知识脉络 2.我的笔记 参考 1.知识脉络 2.我的笔记 这一章公式推导实在太多了,需要补充的推导过程也有很多,就不写电子档了.扩展公式推导和LDA部分补 ...

最新文章

  1. Virtual Earth API 在指定zoomLevel添加自定义图层
  2. python中用def实现自动排序_用 python 实现各种排序算法
  3. python比java简单好学-21、PHP和python/JAVA比,哪个更好学?
  4. C#之windows桌面软件第十二课:电脑ADC值显示(上位机),记忆上次串口号,并用TrackBar控件显示ADC值
  5. PHP安装包解压失败,php安装失败,说什么解压失败什么的
  6. php 子类名,php的继承方法获取子类名
  7. pythondevp2p_以太坊GO、JAVA、PYTHON、RUBY、JS客户端介绍
  8. [HDOJ2586]How far away?(最近公共祖先, 离线tarjan, 并查集)
  9. 使用BeetleX构建基础的SSL网络通讯
  10. Emlog使用qq头像作为评论头像
  11. 计算机体系结构数据库论文,信息管理中计算机数据库系统研究论文
  12. C/C++ 变参函数
  13. redis五种数据类型的使用场景
  14. html css字幕滚动代码,纯CSS实现滚动3D字幕
  15. 三菱plc恒压供水程序+威纶触摸屏程序本成已用于实际项目中
  16. linux下ftp命令打印日志,ftp服务器日志解析
  17. 酒店管理系统 java_java酒店管理系统项目书.pdf
  18. 使用单链表统计英文文本单词个数
  19. PCF8591使用及Python控制
  20. 高纯度钨酸铜粉末/钨酸铁粉末/钨酸亚铁粉末/硫化铋粉末/铬酸铋粉末/氧化锆粉末/铬酸钡粉末

热门文章

  1. 有道云笔记下MarkDown使用
  2. 【UOJ #390】【UNR #3】百鸽笼
  3. 浏览器自动打开桔梗网
  4. ubuntu系统开启ssh用户名密码登录
  5. 交公粮了:十一在家我都逛哪些技术网站?
  6. 3. C++四大函数
  7. react hooks之useCallback
  8. 转:《岳阳楼记》之股市篇
  9. IBM公布了2项合作 Watson将塑造这样的未来医疗?
  10. STM32H750获取OV2640摄像头图像及上位机解码(一维码二维码)