mysql-sql-练习题-1

embedded/2024/9/24 6:22:15/

文章目录

  • 环境
  • 注释
  • 建表 5张
    • 建库
    • 学生表
    • 课程表
    • 教师表
    • 分数表
    • 总表
  • 语法书写顺序
  • in
    • 学过/没学过
    • 完全相同

环境

Windows cmd(普通用户/管理员)

sql">sql>mysql -uroot -p

sql>mysql版本,模式(可自定义)

sql">select version(),@@global.sql_mode;

在这里插入图片描述

注释

MySQL和Hive通用注释:–

建表 5张

建库

sql">-- 创建数据库 指定编码格式
create database sql>mysql_exercise charset = utf8;

学生表

sql">create table student(
s_id varchar(10),s_name varchar(20),s_age date,
s_sex varchar(10));insert into student
values  ('01','赵雷','1990-01-01','男'),('02','钱电','1990-12-21','男'),('03','孙风','1990-05-20','男'),('04','李云','1990-08-06','男'),('05','周梅','1991-12-01','女'),('06','吴兰','1992-03-01','女'),('07','郑竹','1989-07-01','女'),('08','王菊','1990-01-20','女');

课程表

sql">create table course(
c_id varchar(10),c_name varchar(20),t_id varchar(10));insert into course
values  ('01' , '语文' , '02'),('02' , '数学' , '01'),('03' , '英语' , '03');

教师表

sql">create table teacher(
t_id varchar(10),
t_name varchar(20));insert into teacher
values  ('01' , '张三'),('02' , '李四'),	('03' , '王五');

分数表

sql">create table score(
s_id varchar(10),
c_id varchar(10),
score varchar(10));insert into score 
values ('01' , '01' , 80),('01' , '02' , 90),('01' , '03' , 99),('02' , '01' , 70),('02' , '02' , 60),('02' , '03' , 80),('03' , '01' , 80),('03' , '02' , 80),('03' , '03' , 80),('04' , '01' , 50),('04' , '02' , 30),('04' , '03' , 20),('05' , '01' , 76),('05' , '02' , 87),('06' , '01' , 31),('06' , '03' , 34),('07' , '02' , 89),('07' , '03' , 98);

总表

sql">-- 查询语句建表
create table total(select a.s_id,a.s_name,a.s_age,a.s_sex,b.c_id,ifnull(b.score,0) score,c.c_name,c.t_id,d.t_namefrom student aleft join score b on a.s_id = b.s_idleft join course c on b.c_id = c.c_idleft join teacher d on c.t_id = d.t_id);

语法书写顺序

两门及以上,及格同学学号,平均成绩,格式:平均成绩降序,课程ID升序,结果显示第2-4行

sql">selects_id,count(1) count_pass, -- 及格科数cast(avg(score) as decimal(5,2)) score_avg -- 平均成绩
from score
where score >= 60 -- 优先行级过滤,减少数据量
group  by s_id -- 分组(右侧括号图)
having count(1) >= 2 -- 组内过滤
order by any_value(score_avg) desc,any_value(c_id) -- 多字段排序;非分组字段满足语法模式
limit 1,3 -- 限制输出行数:从第1+1行开始,输出3行
;

在这里插入图片描述

in

单字段 in 单结果集
多字段 in 多结果集

学过/没学过

学过课程"01",没学过课程"02"的同学

sql">select s_id,c_id,score
from score
wheres_id in (select s_id from score where c_id = '01') -- 学过课程01的同学ands_id not in (select s_id from score where c_id = '02') -- 没学过课程02的同学
;

在这里插入图片描述

完全相同

和同学"01"学习课程完全相同的同学

sql">select s_id,group_concat(c_id) c_id
from score
where c_id in (select c_id from score where s_id = '01') -- 至少一门相同
group by s_id
having count(1) = (select count(1) from score where s_id = '01') -- 门数相同
;

在这里插入图片描述


http://www.ppmy.cn/embedded/21885.html

相关文章

tfrecord文件介绍、读取、写入介绍

1、tfrecord文件格式介绍 tfrecord文件格式,是深度学习框架tensorflow专用的一种文件格式,其底层使用protobuf,TensorFlow(python)也提供了api用于读取和写入tfrecord,非常方便,而对于golang语言,目前没有成…

物理隔离条件下的数据安全导入导出方案,哪种最安全可控?

数据安全在当今信息化社会中扮演着至关重要的角色,尤其像政府、军工等单位,有比较多的核心数据要保护,一旦出现数据泄漏,将造成不可估量的后果。因此为了保护数据安全,政府、军工等单位一般会采取纯物理隔离&#xff0…

黑马面试篇

课程地址:新版Java面试专题视频教程,java八股文面试全套真题深度详解(含大厂高频面试真题)_哔哩哔哩_bilibili 课程名称:新版Java面试专题视频教程,java八股文面试全套真题深度详解(含大厂高频…

pytest教程-27-分布式执行用例插件-pytest-xdist

上一小节我们学习了pytest随机执行用例插件-pytest-random-order,本小节我们讲解一下pytest分布式执行用例插件pytest-xdist。 前言 平常我们手工测试用例非常多时,比如有1千条用例,假设每个用例执行需要1分钟。如果一个测试人员执行需要10…

PotatoPie 4.0 实验教程(23) —— FPGA实现摄像头图像伽马(Gamma)变换

为什么要进行Gamma校正 图像的 gamma 校正是一种图像处理技术,用于调整图像的亮度和对比度,让显示设备显示的亮度和对比度更符合人眼的感知。Gamma 校正主要用于修正显示设备的非线性响应,以及在图像处理中进行色彩校正和图像增强。 以前&am…

2024/4/28 C++day5

有以下类&#xff0c;完成特殊成员函数 class Person { string name; int *age; } class Stu:public Person { const double score; } #include <iostream> #include <string> using namespace std; class Person { string name; int *age ; publi…

构建未来:利用服务器打造个性化创意项目和在线社区

在这个数字化快速发展的时代&#xff0c;服务器不仅仅是大型企业的专属。个人和小型团队也可以利用服务器的强大能力&#xff0c;开展各种创意项目和建立在线社区。这种趋势不仅推动了技术的民主化&#xff0c;还为个人提供了展示创意和构建影响力的新平台。本文将探讨如何利用…

【 AIGC 研究最新方向(下)】面向平面、视觉、时尚设计的高可用 AIGC 研究方向总结

目前面向平面、视觉、时尚等设计领域的高可用 AIGC 方向有以下 4 种&#xff1a; 透明图层生成可控生成图像定制化SVG 生成 本篇&#xff08;下篇&#xff09;介绍 3、4&#xff0c;上篇在&#xff1a;https://blog.csdn.net/weixin_44212848/article/details/138035279?spm…