MySQL单表查询基础卷(A)
MySQL单表查询基础卷(A)
- 第一章 数据准备
- 第二章 数据展示
- 第三章 题目说明
- 第四章 参考答案
第一章 数据准备
-- 创建数据库,指定字符集 utf8
CREATE DATABASE IF NOT EXISTS zuoye CHARACTER SET 'utf8';-- 使用数据库
USE zuoye;-- course表
CREATE TABLE course (
cs_id INT(11), -- 课程编
cs_name VARCHAR(50), -- 课程名称
cs_credit TINYINT(255), -- 课程学分
cs_type CHAR(12), -- 课程类别
cs_depart CHAR(6) -- 院系名
);INSERT INTO course(cs_id,cs_name,cs_credit,cs_type,cs_depart) VALUES
(5200313,'数据库原理及应用',4,'核心专业','信工'),
(5203314,'计算机导论',4,'通识教育','信工'),
(5219314,'数据结构',5,'专业核心','信工'),
(5223013,'大学物理',4,'专业基础','信工'),
(5227614,'毕业实习',4,'集中实践','信工'),
(5230912,'云计算',2,'共同选修','信工'),
(5236212,'机器学习',2,'共同选修','信工'),
(5237514,'c语言',4,'专业基础','信工'),
(5245112,'区块链',2,'任意选修','信工'),
(7200422,'知识产权法',2,'任意选修','文法'),
(20201833,'概率论',3,'专业基础','基础'),
(20202336,'高等数学',6,'专业基础','基础'),
(29299131,'劳动教育',1,'集中实践','学务');-- student表
CREATE TABLE student (stu_id BIGINT(11), -- 学号stu_name CHAR(12), -- 姓名stu_sex ENUM('男','女'), -- 性别stu_age TINYINT(255), -- 年龄stu_major CHAR(9), -- 专业stu_college CHAR(12) -- 学院
);INSERT INTO student(stu_id,stu_name,stu_sex,stu_age,stu_major,stu_college)
VALUES (201804550101,'郭奎','男',22,'计科','信工学院'),(201804550102,'吕宇航','男',18,'计科','信工学院'),
(201804550103,'张豪辉','女',19,'计科','信工学院'),
(201804550107,'丁志杰','男',17,'金融学','金贸学院'),
(201804550109,'范伟','男',19,'金融学','金贸学院'),(201804550116,'张依婷','女',17,'大数据','信工学院'),
(201804550120,'张维','男',19,'计科','信工学院'),(201804550121,'朱柳阳','女',20,'计科','信工学院'),
(201804550144,'谭兵炎','男',20,'大数据','信工学院'),(201804550153,'杨志强','男',17,'大数据','信工学院');
第二章 数据展示
第三章 题目说明
-- 1.查询全部课程的信息。-- 2.查询信工学院开设的课程名、课程号及学分。-- 3.查询学分超过3学分的课程代码、课程名和开课单位。-- 4.查询计科专业和大数据专业的学生信息。 -- 5.查询不是信工学院的学生姓名和学号。-- 6.查询年龄是17,18,19的学生姓名和专业。-- 7.查询学分在2到4之间课程的信息。-- 8.查询课程名称中带 "数据" 的课程名、课程号及开课单位。-- 9.查询信工学院的的专业有哪些。-- 10.查询年龄为空的学生信息。-- 11.查询不是信工开设的集中实践课的开课单位和课程名称。-- 12.查询信工开设的课程的类型有哪些。-- 13.查询专业所在的学生个数。-- 14.查询信工开设的课程的平均学分。-- 15.查询学生的信息,查询结果按姓名升序排序。(默认升序)-- 16.查询 每个专业的学生的最大年龄、最小年龄和平均年龄,查询结果按平均年龄降序排列。-- 17.查询每个开课单位开设的课程门数的,查询结果按课程门数升序排列。-- 18.查询单位开课门数少于2门的开课单位和课程名称。
第四章 参考答案
-- 1.查询全部课程的信息。
SELECT * FROM course;-- 2.查询信工学院开设的课程名、课程号及学分。
SELECT tt.cs_name, -- 课程名称tt.cs_id, -- 课程号tt.cs_credit -- 学分
FROM course tt -- 学科信息表
WHERE tt.cs_depart = '信工';-- 3.查询学分超过3学分的课程代码、课程名和开课单位。
SELECT tt.cs_id, -- 课程代码tt.cs_name, -- 课程名称tt.cs_depart -- 开课单位
FROM course tt -- 学科信息表
WHERE tt.cs_credit>3; -- 学分超过3分-- 4.查询计科专业和大数据专业的学生信息。
SELECT *
FROM student tt
WHEREtt.stu_major='计科' OR tt.stu_major='大数据';-- 5.查询不是信工学院的学生姓名和学号。
SELECT tt.stu_name, -- 姓名tt.stu_id -- 学号
FROM student tt
WHEREtt.stu_college != '信工学院';-- 6.查询年龄是17,18,19的学生姓名和专业。
SELECT tt.stu_name, -- 姓名tt.stu_major -- 专业
FROM student tt
WHEREtt.stu_age IN (17,18,19);-- 7.查询学分在2到4之间课程的信息。
SELECT tt.*
FROM course tt
WHEREtt.cs_credit BETWEEN 2 AND 4;-- 8.查询课程名称中带 "数据" 的课程名、课程号及开课单位。
SELECT tt.cs_name, -- 课程名称tt.cs_id, -- 课程号 tt.cs_depart -- 开课单位
FROM course tt
WHEREtt.cs_name LIKE "%数据%";-- 9.查询信工学院的的专业有哪些。
SELECT DISTINCT tt.stu_major -- 专业
FROM student tt
WHEREtt.stu_college = '信工学院';-- 10.查询年龄为空的学生信息。
SELECT tt.*
FROM student tt
WHEREtt.stu_age IS NULL;-- 11.查询不是信工开设的集中实践课的开课单位和课程名称。
SELECT tt.cs_depart, -- 开课单位tt.cs_name -- 课程名称
FROM course tt
WHEREtt.cs_depart != '信工' AND tt.cs_type='集中实践';-- 12.查询信工开设的课程的类型有哪些。
SELECT DISTINCT tt.cs_type -- 课程类型
FROM course tt
WHEREtt.cs_depart = '信工';-- 13.查询专业所在的学生个数。
SELECT tt.stu_major '专业', COUNT(*) '学生人数'
FROM student tt
GROUP BYtt.stu_major;-- 14.查询信工开设的课程的平均学分。
SELECT AVG(tt.cs_credit) '平均分'
FROM course tt
WHEREtt.cs_depart = '信工';-- 15.查询学生的信息,查询结果按姓名升序排序。(默认升序)
SELECT tt.*
FROM student tt
ORDER BYtt.stu_name ASC;-- 16.查询 每个专业的学生的最大年龄、最小年龄和平均年龄,查询结果按平均年龄降序排列。
SELECT tt.stu_major '专业',MAX(tt.stu_age) '最大年龄',MIN(tt.stu_age) '最小年龄',AVG(tt.stu_age) '平均年龄'
FROM student tt
GROUP BY tt.stu_major
ORDER BYAVG(tt.stu_age) DESC;-- 17.查询每个开课单位开设的课程门数的,查询结果按课程门数升序排列。
SELECT tt.cs_depart '开课单位',COUNT(tt.cs_name) '课程门数'
FROM course tt
GROUP BYtt.cs_depart
ORDER BYCOUNT(tt.cs_name) ASC;-- 18.查询单位开课门数少于2门的开课单位和课程名称。
SELECT tt.cs_depart '开课单位',COUNT(tt.cs_name) '课程门数'
FROM course tt
GROUP BYtt.cs_depart
HAVINGCOUNT(tt.cs_name) < 2;
MySQL单表查询基础卷(A)相关推荐
- 运维高级学习(三):MySQL单表查询作业
MySQL第三次作业 MySQL单表查询作业 素材如下: DROP TABLE IF EXISTS `course`; CREATE TABLE `course` ( `cs_id` int(11) ...
- Mysql 单表查询where初识
Mysql 单表查询where初识 准备数据 -- 创建测试库 -- drop database if exists student_db; create database student_db ch ...
- Mysql单表查询和多表查询
单表查询 一 单表查询的语法 #查询数据的本质:mysql会到你本地的硬盘上找到对应的文件,然后打开文件,按照你的查询条件来找出你需要的数据.下面是完整的一个单表查询的语法select * from, ...
- MySQL单表查询练习题
数据准备:install.bat @ECHO OFF ::未配置环境变量下 cd C:\Program Files\MySQL\MySQL Server 5.7\bin\ SET dbhost=127 ...
- mysql 单表查询
一 单表查询的语法 SELECT 字段1,字段2... FROM 表名WHERE 条件GROUP BY fieldHAVING 筛选ORDER BY fieldLIMIT 限制条数 二 关键字的执行优 ...
- 0x06 MySQL 单表查询
一 单表查询语法 SELECT 字段1,字段2... FROM 表名WHERE 条件GROUP BY fieldHAVING 筛选ORDER BY fieldLIMIT 限制条数 二 关键字执行优先级 ...
- mysql单表查询详解
文章目录 一.单表查询 1.1 创建数据库 1.2 单表查询 1.2.1 查询所有字段 1.2.2 使用通配符*查询所有字段 1.2.3 查询指定字段 1.2.4 去重distinct的使用 1.2. ...
- mysql单表查询实例_MySQL简单查询详解-单表查询
MySQL简单查询详解-单表查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查询的执行路径 一条SQL查询语句的执行过程大致如下图所示: 1>.客户端和服务端通过my ...
- MySQL单表查询例题
一.单表查询 CREATE TABLE `worker` ( `部门号` int(11) NOT NULL, `职工号` int(11) NOT NULL, `工作时间` date NOT NU ...
最新文章
- git 设置 key 到服务器,同步代码不需要输入用户名和密码
- 板子armv7_32怎么挂载windows文件夹?
- 第一章 统计学概论
- java从数组查找指定整数_如何在Java中使用重复项查找整数数组中的K个缺失数字?...
- 一个使用Logging Application Block的小问题[xgluxv]
- C#LeetCode刷题之#594-最长和谐子序列​​​​​​​​​​​​​​(Longest Harmonious Subsequence)
- Anconda之常用命令汇总
- terminal mysql_MySQL的终端(Terminal)管理数据库、数据表、数据基本操作
- proteus8.6 示波器弹不出来?
- 【PROTEUS】使用PROTEUS与电脑串口调试助手进行通讯
- office2007安装失败2902_Office2007安装出错怎么办?安装出错原因及解决方法分享
- 360 android系统 流量,360流量卫士 for Android
- 阿里云sms短信服务
- Vmware+Ubuntu18.04配置桥接模式,并解决虚机中网络慢的问题
- 535A: Tavas and Nafas
- 图像正交变换的研究意义
- 当人说君子动口不动手时怎么回怼_俗话说:“君子动口不动手。”那么到底什么样的人才称得上君子?...
- 【解决】百度云盘怎么免费提高下载速度?
- Testin云测试-标准兼容性测试
- 一天一看————RAID磁盘阵列及配置
热门文章
- springboot外委员工后台管理系统毕业设计源码101157
- 基于Java毕业设计学生综合测评系统源码+系统+mysql+lw文档+部署软件
- 神经内分泌肿瘤治疗新进展,神经内分泌肿瘤进展
- lua-文件操作代码大全
- 在一张 24 GB 的消费级显卡上用 RLHF 微调 20B LLMs
- Unity接入激励视频广告,Admob+UnityAds+FacebookAudienceNetwork+Pangle。
- 全球及中国液体免清洗助焊剂行业销售动态及投资盈利预测报告(2022-2027)
- sort排序中cmp()的用法
- KLD导航无法支持外卡的解决方法
- vmware虚拟服务器说明,VMware虚拟机版及虚拟机使用简单说明