mysql-sql-练习题-1

文章目录

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

环境

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

mysql -uroot -p

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

select version(),@@global.sql_mode;

在这里插入图片描述

注释

MySQL和Hive通用注释:–

建表 5张

建库

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

学生表

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','女');

课程表

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');

教师表

create table teacher(
t_id varchar(10),
t_name varchar(20));

insert into teacher
values  
  ('01' , '张三'),
  ('02' , '李四'),	
  ('03' , '王五');

分数表

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);

总表

-- 查询语句建表
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_name
  from student a
  left join score b on a.s_id = b.s_id
  left join course c on b.c_id = c.c_id
  left join teacher d on c.t_id = d.t_id);

语法书写顺序

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

select
  s_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"的同学

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

在这里插入图片描述

完全相同

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

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') -- 门数相同
;

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/583069.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

不完全微分PD控制器(CODESYS源代码+算法详细介绍)

完全微分计算公式为Kp*Td/Ts(e(k)-e(k-1))。有关位置式PID和增量式PID更多相关内容,大家可以参考下面的文章链接: 1、CODESYS位置式PID CODESYS位置式PID(完整ST源代码)_codesys pid功能块-CSDN博客文章浏览阅读1.1k次,点赞2次,收藏2次。CODESYS增量式PID完整源代码请参看…

中国标准地图如何与卫星影像叠加

我们在《一幅SHP格式的中国标准地图》一文中,为你分享过一幅SHP格式的中国标准地图,但该数据为等积投影。 由于我们常用的卫星影像为WGS84经纬度投影或墨卡托投影,那么将该数据如何与卫星影像进行叠加制作专题图呢? 我们现在就来…

day17-day20_项目实战项目部署

万信金融 项目部署 目标: 理解DevOps概念 能够使用Docker Compose部署项目 理解持续集成的作用 会使用Jenkins进行持续集成 1 DevOps介绍 1.1 什么是DevOps DevOps是Development和Operations两个词的缩写,引用百度百科的定义: DevOps…

Windows Server配置网卡绑定:NIC组合

正文共:1024 字 12 图,预估阅读时间:1 分钟 在网络设备上,为了提高可靠性,一般会配置链路聚合(Link Aggregation)(网络之路28:二层链路聚合),同样…

GNU Radio之OFDM Channel Estimation底层C++实现

文章目录 前言一、 OFDM Channel Estimation 模块简介二、C 具体实现1、初始化和配置参数2、forecast 函数3、计算载波偏移量4、提取信道响应5、核心的数据处理任务 前言 OFDM Channel Estimation 模块的功能是根据前导码(同步字)估计 OFDM 的信道和粗略…

FileLink内外网文件摆渡系统产品介绍

在现代企业中,往往存在着多个网络、系统之间的数据孤岛问题,数据难以互相访问和共享。 一、常用的内外网文件摆渡方式 传统的数据交换方式往往需要人工介入,效率低下且容易出错。如:U盘、FTP、VPN等,极易引发各种各样…

CSS常见的 9 个单位汇总!

你好,我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃-大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端工具”,可获取 Web 开发工具合…

银行卡归属地查询API接口快速对接

银行卡归属地查询API接口指的是通过银行卡号查询该银行卡详细信息,包括银行卡名称、卡种、卡品牌、发卡行、编号以及归属地等信息,支持一千多家银行返回归属地信息,那么银行卡归属地查询API接口如何快速对接呢? 首先找到有做银行…

短视频橱窗好物带货者必看:如何解决无商品素材无收益还限流的烦恼?

随着短视频橱窗带货越来越火爆,许多人发现通过短视频橱窗好物带货素材APP不仅可以提升创作效果,还能轻松赚取佣金。下面,为您推荐三款一键领取并直接发布的抖音短视频素材APP,确保您在创作短视频时,既有高质量的素材&a…

Facebook’s Tectonic Filesystem: Efficiency from Exascale——论文阅读

FAST 2021 Paper 分布式元数据论文阅读笔记整理 背景 Blob storage 用来存放大量的文本、图片、视频等非结构化数据 包含 EB 级别的数据 存储内容大小不一,大小几KB到几MB不等 要求低时延 使用 Haystack 和 F4 Data warehouse 存放用于数据分析和机器学习的…

AI与新能源催生新增长,电子制造业如何提升预测力与连接力?

国产替代和新基建带来的结构性机遇,AI和新能源汽车行业的增长所带来的需求提升,都给电子制造行业以乐观的理由。但是,不少企业的客户经营管理、供需平衡与供应链协同等所面临的挑战仍在,如何为行业高质量增长持续注入动能&#xf…

使用mmdetection来训练自己的数据集(visdrone)(四)结果分析

测试 python tools/test.py <your-config-file> <your-model-weights-file> --out <save-pickle-path>关于test.py 的命令行 parser.add_argument(--out,typestr,helpdump predictions to a pickle file for offline evaluation)计算量、参数量计算脚本 pyth…

PNPM - nodejs 包管理

文章目录 一、关于 PNPM开发动机1、节省磁盘空间2、提升安装速度3、创建一个 non-flat node_modules 文件夹 二、安装通过 npm 安装 pnpm通过 Homebrew 安装 pnpm 三、pnpm CLI1、与 npm 的差异2、参数-C <path>, --dir <path>-w, --workspace-root 3、命令4、环境…

如何监控ANR

在 Android 开发中&#xff0c;“应用程序无响应”&#xff08;ANR&#xff09;是一种常见的问题&#xff0c;当应用程序在主线程上执行过长时间的操作时就会出现。本文将详细介绍ANR的成因&#xff0c;以及如何有效监控和预防这一问题。 什么是ANR&#xff1f; ANR&#xff…

PADS看图常用操作

1.放大缩小&#xff1a; 方法1&#xff0c;CTRL滚轮 方法2&#xff0c;按住滚轮&#xff0c;前后移动鼠标。 方法3&#xff0c;PageUP&#xff0c;PageDown按键 2.PADS layout只显示单层&#xff08;当前层&#xff09;怎么操作&#xff0c;而不显示其他层 第一步&#xff1a;…

Android双向认证配置过程

1&#xff08;可以绕过&#xff09;准备过程 为了让这个教程可以一直复用&#xff0c;打算直接写一个双向认证的APP作为素材。 工具&#xff1a; ●protecle&#xff08;签名文件转换&#xff09; ●keytool&#xff08;java自己就有&#xff09; ●openssl&#xff08;apache里…

使用工具速记

文章目录 一、sqlyoy登录账号信息迁移二、idea导入之前的已配置的idea信息三、设置windows UI大小四、其他 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、sqlyoy登录账号信息迁移 工具(sqlyog上面菜单栏)->导入导出详情->选择要导出的账号…

安卓悬浮窗权限检查

目录 悬浮窗权限代码检测悬浮窗功能 悬浮窗权限 请求了这个权限后&#xff0c;app的权限管理中会有「显示悬浮窗」的权限选项。后面会引导用户去开启这个权限。 <uses-permission android:name"android.permission.SYSTEM_ALERT_WINDOW" />代码检测悬浮窗功能…

算法基础课 贪心算法模板题笔记

AcWing算法基础课 贪心算法模板题笔记 贪心得到的答案 > 最优解 贪心得到的答案 < 最优解 局部最优 -> 全局最优 文章目录 1 区间问题例1&#xff1a;区间选点例2&#xff1a;最大不相交区间数量例3&#xff1a;区间分组例4&#xff1a;区间覆盖 2 Huffman树例&…

2023最新!Git2.40.0于win10环境下的安装

2023最新&#xff01;Git2.40.0于win10环境下的安装 git官网地址&#xff1a;https://git-scm.com/download/win/ 导航 文章目录 2023最新&#xff01;Git2.40.0于win10环境下的安装导航一、下载Git二、安装Git三、检验 一、下载Git Git官网选择自己所需的版本下载 二、安装…