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)相关推荐

  1. 运维高级学习(三):MySQL单表查询作业

    MySQL第三次作业 MySQL单表查询作业 素材如下: DROP TABLE IF EXISTS `course`; CREATE TABLE `course` ( `cs_id` int(11) ...

  2. Mysql 单表查询where初识

    Mysql 单表查询where初识 准备数据 -- 创建测试库 -- drop database if exists student_db; create database student_db ch ...

  3. Mysql单表查询和多表查询

    单表查询 一 单表查询的语法 #查询数据的本质:mysql会到你本地的硬盘上找到对应的文件,然后打开文件,按照你的查询条件来找出你需要的数据.下面是完整的一个单表查询的语法select * from, ...

  4. MySQL单表查询练习题

    数据准备:install.bat @ECHO OFF ::未配置环境变量下 cd C:\Program Files\MySQL\MySQL Server 5.7\bin\ SET dbhost=127 ...

  5. mysql 单表查询

    一 单表查询的语法 SELECT 字段1,字段2... FROM 表名WHERE 条件GROUP BY fieldHAVING 筛选ORDER BY fieldLIMIT 限制条数 二 关键字的执行优 ...

  6. 0x06 MySQL 单表查询

    一 单表查询语法 SELECT 字段1,字段2... FROM 表名WHERE 条件GROUP BY fieldHAVING 筛选ORDER BY fieldLIMIT 限制条数 二 关键字执行优先级 ...

  7. mysql单表查询详解

    文章目录 一.单表查询 1.1 创建数据库 1.2 单表查询 1.2.1 查询所有字段 1.2.2 使用通配符*查询所有字段 1.2.3 查询指定字段 1.2.4 去重distinct的使用 1.2. ...

  8. mysql单表查询实例_MySQL简单查询详解-单表查询

    MySQL简单查询详解-单表查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查询的执行路径 一条SQL查询语句的执行过程大致如下图所示: 1>.客户端和服务端通过my ...

  9. MySQL单表查询例题

    一.单表查询 CREATE TABLE `worker` (  `部门号` int(11) NOT NULL,  `职工号` int(11) NOT NULL,  `工作时间` date NOT NU ...

最新文章

  1. git 设置 key 到服务器,同步代码不需要输入用户名和密码
  2. 板子armv7_32怎么挂载windows文件夹?
  3. 第一章 统计学概论
  4. java从数组查找指定整数_如何在Java中使用重复项查找整数数组中的K个缺失数字?...
  5. 一个使用Logging Application Block的小问题[xgluxv]
  6. C#LeetCode刷题之#594-最长和谐子序列​​​​​​​​​​​​​​(Longest Harmonious Subsequence)
  7. Anconda之常用命令汇总
  8. terminal mysql_MySQL的终端(Terminal)管理数据库、数据表、数据基本操作
  9. proteus8.6 示波器弹不出来?
  10. 【PROTEUS】使用PROTEUS与电脑串口调试助手进行通讯
  11. office2007安装失败2902_Office2007安装出错怎么办?安装出错原因及解决方法分享
  12. 360 android系统 流量,360流量卫士 for Android
  13. 阿里云sms短信服务
  14. Vmware+Ubuntu18.04配置桥接模式,并解决虚机中网络慢的问题
  15. 535A: Tavas and Nafas
  16. 图像正交变换的研究意义
  17. 当人说君子动口不动手时怎么回怼_俗话说:“君子动口不动手。”那么到底什么样的人才称得上君子?...
  18. 【解决】百度云盘怎么免费提高下载速度?
  19. Testin云测试-标准兼容性测试
  20. 一天一看————RAID磁盘阵列及配置

热门文章

  1. springboot外委员工后台管理系统毕业设计源码101157
  2. 基于Java毕业设计学生综合测评系统源码+系统+mysql+lw文档+部署软件
  3. 神经内分泌肿瘤治疗新进展,神经内分泌肿瘤进展
  4. lua-文件操作代码大全
  5. 在一张 24 GB 的消费级显卡上用 RLHF 微调 20B LLMs
  6. Unity接入激励视频广告,Admob+UnityAds+FacebookAudienceNetwork+Pangle。
  7. 全球及中国液体免清洗助焊剂行业销售动态及投资盈利预测报告(2022-2027)
  8. sort排序中cmp()的用法
  9. KLD导航无法支持外卡的解决方法
  10. vmware虚拟服务器说明,VMware虚拟机版及虚拟机使用简单说明