当前位置: 首页 > news >正文

sql-50练习题16-20

sql-50练习题16-20

  • 前言
  • 数据库表结构介绍
    • 学生表
    • 课程表
    • 成绩表
    • 教师表
  • 1-6 检索"01"课程分数小于60,按分数降序排列的学生信息
  • 1-7 按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩
  • 1-8 查询各科成绩最高分、最低分和平均分:以如下形式显示:课程ID,课程name,最高分,最低分,平均分,及格率,中等率,优良率,优秀率
  • 1-9 查询学生的总成绩并进行排名
  • 2-0 查询学生的总成绩并进行排名

前言

sql真的非常灵活,一个题目可能有很多很多种解法,我记录的只是我自己的一个解题思路,如果大家有更好的不同解法欢迎在评论区一起探讨
ps:有些题可能解法会重复,比如求大于,我们下一个题可能是求小于,大家如果第一遍没有做出来,看了我写的之后有了思路,可以试一下反面的解法。

数据库表结构介绍

学生表

在这里插入图片描述

课程表

在这里插入图片描述

成绩表

在这里插入图片描述

教师表

在这里插入图片描述

1-6 检索"01"课程分数小于60,按分数降序排列的学生信息

SELECTa.*, b.c_id,b.s_score
FROMstudent a,score b
WHEREa.s_id = b.s_id
AND b.c_id = '01'
AND b.s_score < 60
ORDER BYb.s_score DESC;

结果如下:
在这里插入图片描述

1-7 按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩

SELECTa.s_id,(SELECTs_scoreFROMscoreWHEREs_id = a.s_idAND c_id = '01') AS 语文,(SELECTs_scoreFROMscoreWHEREs_id = a.s_idAND c_id = '02') AS 数学,(SELECTs_scoreFROMscoreWHEREs_id = a.s_idAND c_id = '03') AS 英语,round(avg(s_score), 2) AS 平均分
FROMscore a
GROUP BYa.s_id
ORDER BY平均分 DESC;

结果如下:
在这里插入图片描述

1-8 查询各科成绩最高分、最低分和平均分:以如下形式显示:课程ID,课程name,最高分,最低分,平均分,及格率,中等率,优良率,优秀率

– round 函数主要是进行数值的小数点保留
– 1、round(x,d) x指要处理的数,d是指保留几位小数。这里有个值得注意的地方是,d可以是负数,这时是指定小数点左边的d位整数位为0,同时小数位均为0;
– 2、round(x) ,其实就是round(x,0),也就是默认d为0;

SELECTa.c_id,b.c_name,MAX(s_score),MIN(s_score),AVG(s_score),ROUND(100 * (SUM(CASEWHEN a.s_score >= 60AND a.s_score <= 90 THEN1ELSE0END) / SUM(CASEWHEN a.s_score THEN1ELSE0END)),2) AS 及格率,ROUND(100 * (SUM(CASEWHEN a.s_score >= 70AND a.s_score <= 80 THEN1ELSE0END) / SUM(CASEWHEN a.s_score THEN1ELSE0END)),2) AS 中等率,ROUND(100 * (SUM(CASEWHEN a.s_score >= 80AND a.s_score <= 90 THEN1ELSE0END) / SUM(CASEWHEN a.s_score THEN1ELSE0END)),2) AS 优良率,ROUND(100 * (SUM(CASEWHEN a.s_score >= 90 THEN1ELSE0END) / SUM(CASEWHEN a.s_score THEN1ELSE0END)),2) AS 优秀率
FROMscore a
LEFT JOIN course b ON a.c_id = b.c_id
GROUP BYa.c_id

结果如下:
在这里插入图片描述

1-9 查询学生的总成绩并进行排名

SELECT b.*, a.c_id, a.s_score, (SELECT COUNT(DISTINCT a2.s_score) FROM score a2 WHERE a2.c_id = a.c_id AND a2.s_score >= a.s_score) AS rk
FROM score a
JOIN student b ON a.s_id = b.s_id;

结果如下:
在这里插入图片描述

2-0 查询学生的总成绩并进行排名

SELECTsuma.*, (SELECTcount(avgscore)FROM(SELECTa.s_id,avg(a.s_score) avgscoreFROMscore aGROUP BYa.s_id) sumbWHEREsuma.avgscore < sumb.avgscore) + 1 rk
FROM(SELECTa.s_id,avg(a.s_score) avgscoreFROMscore aGROUP BYa.s_id) suma
ORDER BYrk ASC

结果如下:
在这里插入图片描述

相关文章:

sql-50练习题16-20

sql-50练习题16-20 前言数据库表结构介绍学生表课程表成绩表教师表 1-6 检索"01"课程分数小于60&#xff0c;按分数降序排列的学生信息1-7 按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩1-8 查询各科成绩最高分、最低分和平均分&#xff1a;以如下形式…...

算法通关村第四关|青铜|自己实现栈

1.自己实现栈——基于数组 top 有的地方指向栈顶元素&#xff0c;有的地方指向栈顶再往上的一个空单位&#xff0c;根据题目要求设计。 *这里将 top 设置为栈顶再往上的一个空单位。 import java.util.Arrays; class Mystack<T> {private Object[] stack;// 指向栈顶…...

Calcite 自定义优化器规则

1&#xff09;总结 1.创建 CSVProjectRule 继承 RelRule<CSVProjectRule.Config> a&#xff09;在 CSVProjectRule.Config 接口中实现匹配规则 Config DEFAULT EMPTY.withOperandSupplier(b0 ->b0.operand(LogicalProject.class).anyInputs()).as(Config.class);b…...

【flink】flink获取-D参数方式

参考官网 一、idea 本地运行 使用Flink官方的ParameterTool或者其他工具都可以。 二、集群运行flink run/run-application &#xff08;1&#xff09;ParameterTool 获取参数 以-D开头的参数&#xff1a; ParameterTool parameter ParameterTool.fromSystemProperties()…...

NLP之多循环神经网络情感分析

文章目录 代码展示代码意图代码解读知识点介绍 代码展示 import pandas as pd import tensorflow as tf# 构建RNN神经网络 tf.random.set_seed(1) df pd.read_csv("../data/Clothing Reviews.csv") print(df.info())df[Review Text] df[Review Text].astype(str) …...

【AutoML】AutoKeras 的安装和环境配置(VSCode)

本地环境中已经有太多的工作配置了&#xff08;Python、Java、Maven、Docker 等等&#xff09;&#xff0c;为了不影响其他环境运行&#xff0c;我选择直接在 VSCode 中创建工作空间并配置好 AutoKeras&#xff08;反正最后也是要在 VSCode 中进行开发的&#xff09;。 打开 V…...

树结构及其算法-用数组来实现二叉树

目录 树结构及其算法-用数组来实现二叉树 C代码 树结构及其算法-用数组来实现二叉树 使用有序的一维数组来表示二叉树&#xff0c;首先可将此二叉树假想成一棵满二叉树&#xff0c;而且第层具有个节点&#xff0c;按序存放在一维数组中。首先来看看使用一维数组建立二叉树的…...

知识图谱与大模型结合方法概述

《Unifying Large Language Models and Knowledge Graphs: A Roadmap》总结了大语言模型和知识图谱融合的三种路线&#xff1a;1&#xff09;KG增强的LLM&#xff0c;可在LLMs的预训练和推理阶段引入KGs&#xff1b;2&#xff09;LLM增强KG&#xff0c;LLM可用于KG构建、KG emb…...

ASO优化之如何制作Google Play的长短描述

应用的描述以及标题和图标是元数据中最关键的元素&#xff0c;可以影响用户是否决定下载我们的应用程序。简短描述的长度限制为80个字符&#xff0c;它提供了更多的有关应用背景信息的机会。 1、简短描述帮助用户快速了解我们应用。 确保内容丰富的同时&#xff0c;保持简洁和…...

Python-platform模块

platform目录 前言一、platform.system()二、platform.release()三、platform.python_version()四、platform.machine()五、platform.python_implementation()六、其他代码示例七、help总结前言 Python platform模块是一个用于获取和操作操作系统相关信息的内置模块。它提供了…...

Yolov5旋转框(斜框)检测自己的数据集,附带代码模型可以收敛

文章目录 1. 制作数据集1.1 标注数据集1.2标签转换1.3 数据集划分2. 环境搭建1.安装nms_rotated2.安装DOTA_devkit3. 代码讲解3.1坐标表示3.2 损失函数4.训练+测试链接后面附上百度网盘链接,内部包含数据集。 下一篇介绍tensorRT部署yolov5-obb 1. 制作数据集 ​ 标注软件为…...

嵌入式应用选择正确的系统设计方法:第三部分

产品质量低下的原因有很多&#xff0c;例如&#xff0c;产品制造粗糙&#xff0c;组件设计不当&#xff0c;架构不佳以及对产品的要求了解不多。点击领取嵌入式物联网学习路线 必须设计质量。 您不能测试出足够的错误来交付高质量的产品。的质量保证&#xff08;QA&#xff09…...

pthread_attr_getstacksize 问题

最近公司里遇到一个线程栈大小的问题&#xff0c;借此机会刚好学习一下这个线程栈大小相关的函数。如果公司里用的还是比较老的代码的话&#xff0c;都是用的 pthread 库支持线程的&#xff0c;而不是 c11 里的线程类。主要有两个相关函数&#xff1a;pthread_attr_setstacksiz…...

anaconda常见语法

anaconda常见语法 一、镜像 1.添加镜像channel conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/2.删除镜像channel conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/3.展示目前已有的镜像…...

reactive与ref VCA

简介 Vue3 最大的一个变动应该就是推出了 CompositionAPI&#xff0c;可以说它受ReactHook 启发而来&#xff1b;它我们编写逻辑更灵活&#xff0c;便于提取公共逻辑&#xff0c;代码的复用率得到了提高&#xff0c;也不用再使用 mixin 担心命名冲突的问题。 ref 与 reactive…...

小程序day01

简介: 小程序项目的基本结构 页面的组成部分 一个页面对应一个文件夹&#xff0c;所有有关的内容都放在一起。 JSON配置文件 2.app.json文件 3.project.config.json文件 4.sitemap.json文件 5.页面的.json配置文件 6. 新建小程序页面 7.修改项目首页 小程序代码构成 小程序的宿…...

redis主要支持的数据类型有哪些?—— 筑梦之路

Redis支持的主要数据类型&#xff1a; 1、字符串&#xff08;String&#xff09;&#xff1a;字符串是最简单的数据结构&#xff0c;可以存储文本或二进制数据。常用操作&#xff1a;设置值、获取值、追加、自增自减等。 2、列表&#xff08;List&#xff09;&#xff1a;列表是…...

解决国际阿里云服务器挂载云盘的问题!!

跟着云计算技术的开展&#xff0c;越来越多的企业和个人挑选运用云服务器。然而&#xff0c;在运用过程中&#xff0c;可能会遇到一些问题&#xff0c;比如云服务器无法挂载云盘。这篇文章将详细说明如何处理这个问题。 一、云服务器无法挂载云盘的原因 云服务器无法挂载云盘可…...

基于吉萨金字塔建造算法的无人机航迹规划-附代码

基于吉萨金字塔建造算法的无人机航迹规划 文章目录 基于吉萨金字塔建造算法的无人机航迹规划1.吉萨金字塔建造搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用吉萨金字塔建造算法…...

高频SQL50题(基础版)-1

文章目录 主要内容一.SQL练习题1.1757-可回收且抵制的产品代码如下&#xff08;示例&#xff09;: 2.584-寻找用户推荐人代码如下&#xff08;示例&#xff09;: 3.595-大的国家代码如下&#xff08;示例&#xff09;: 4.1148-文章浏览代码如下&#xff08;示例&#xff09;: 5…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件&#xff1a;-&#xff08;纯文本文件&#xff0c;二进制文件&#xff0c;数据格式文件&#xff09; 如文本文件、图片、程序文件等。 目录文件&#xff1a;d&#xff08;directory&#xff09; 用来存放其他文件或子目录。 设备…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会&#xff0c;其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具&#xff0c;对过去十年 WWDC 主题演讲内容进行了系统化分析&#xff0c;形成了这份…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

Matlab | matlab常用命令总结

常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息&#xff0c;对客户进行统一管理&#xff0c;可以把所有客户信息录入系统&#xff0c;进行维护和统计功能。可通过文件的方式保存相关录入数据&#xff0c;对…...

Golang——7、包与接口详解

包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...

wpf在image控件上快速显示内存图像

wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像&#xff08;比如分辨率3000*3000的图像&#xff09;的办法&#xff0c;尤其是想把内存中的裸数据&#xff08;只有图像的数据&#xff0c;不包…...

Python 训练营打卡 Day 47

注意力热力图可视化 在day 46代码的基础上&#xff0c;对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...

LLaMA-Factory 微调 Qwen2-VL 进行人脸情感识别(二)

在上一篇文章中,我们详细介绍了如何使用LLaMA-Factory框架对Qwen2-VL大模型进行微调,以实现人脸情感识别的功能。本篇文章将聚焦于微调完成后,如何调用这个模型进行人脸情感识别的具体代码实现,包括详细的步骤和注释。 模型调用步骤 环境准备:确保安装了必要的Python库。…...