mysql查找最高分最低分_sql查询最高分、最低分和平均分语句
sql 查询最高分、最低分和平均分语句
//我们要用就以学生成绩为实例吧
/*
结构
学生表
Student(S#,Sname,Sage,Ssex) --S# 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别
--2.课程表
Course(C#,Cname,T#) --C# --课程编号,Cname 课程名称,T# 教师编号
*/
查询各科成绩最高分、最低分和平均分:以如下形式显示:课程ID,课程name,最高分,最低分,平均分,及格率,中等率,优良率,优秀率
--及格为>=60,中等为:70-80,优良为:80-90,优秀为:>=90
--方法1
select m.C# [课程编号], m.Cname [课程名称],
max(n.score) [最高分],
min(n.score) [最低分],
cast(avg(n.score) as decimal(18,2)) [平均分],
cast((select count(1) from SC where C# = m.C# and score >= 60)*100.0 / (select count(1) from SC where C# = m.C#) as decimal(18,2)) [及格率(%)],
cast((select count(1) from SC where C# = m.C# and score >= 70 and score < 80 )*100.0 / (select count(1) from SC where C# = m.C#) as decimal(18,2)) [中等率(%)],
cast((select count(1) from SC where C# = m.C# and score >= 80 and score < 90 )*100.0 / (select count(1) from SC where C# = m.C#) as decimal(18,2)) [优良率(%)],
cast((select count(1) from SC where C# = m.C# and score >= 90)*100.0 / (select count(1) from SC where C# = m.C#) as decimal(18,2)) [优秀率(%)]
from Course m , SC n
where m.C# = n.C#
group by m.C# , m.Cname
order by m.C#
--方法2
select m.C# [课程编号], m.Cname [课程名称],
(select max(score) from SC where C# = m.C#) [最高分],
(select min(score) from SC where C# = m.C#) [最低分],
(select cast(avg(score) as decimal(18,2)) from SC where C# = m.C#) [平均分],
cast((select count(1) from SC where C# = m.C# and score >= 60)*100.0 / (select count(1) from SC where C# = m.C#) as decimal(18,2)) [及格率(%)],
cast((select count(1) from SC where C# = m.C# and score >= 70 and score < 80 )*100.0 / (select count(1) from SC where C# = m.C#) as decimal(18,2)) [中等率(%)],
cast((select count(1) from SC where C# = m.C# and score >= 80 and score < 90 )*100.0 / (select count(1) from SC where C# = m.C#) as decimal(18,2)) [优良率(%)],
cast((select count(1) from SC where C# = m.C# and score >= 90)*100.0 / (select count(1) from SC where C# = m.C#) as decimal(18,2)) [优秀率(%)]
from Course m
order by m.C#
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉
本文系统来源:php中文网
mysql查找最高分最低分_sql查询最高分、最低分和平均分语句相关推荐
- mysql mybatis分表查询_mybatis 自动分表
参考: 相关源码已上传至我的 github 欢迎转载,转载请注明出处,尊重作者劳动成果:https://www.cnblogs.com/li-mzx/p/9963312.html 前言 小弟才疏学浅, ...
- mysql 数据库分表查询_mysql数据库分表及实现
项目开发中,我们的数据库数据越来越大,随之而来的是单个表中数据太多.以至于查询书读变慢,而且由于表的锁机制导致应用操作也搜到严重影响,出现了数据库性能瓶颈. 当出现这种情况时,我们可以考虑分表,即将单 ...
- mysql 学生成绩最高分的学科_sql查询成绩表中每一科成绩最高的分数以及这个学生的名字,学科名,面试的时候碰到的问题...
前段时间面试的时候碰到这样一个面试题,因为很久没接触sql竟然没写出来. 如图有这样一张成绩表: 首先要理解group by 含义:"Group By"从字面意义上理解就是根据&q ...
- mysql 查找数据过程_mysql数据库查询过程探究和优化建议
查询过程探究 我们先看一下向mysql发送一个查询请求时,mysql做了什么? 如上图所示,查询执行的过程大概可分为6个步骤: 客户端向MySQL服务器发送一条查询请求 服务器首先检查查询缓存,如果命 ...
- mysql 最长的字段_sql 查询某个字段最长的记录
sql 查询文本字段中值的长度最长的记录 一.函数 1.SQL Server LEN() 函数返回文本字段中值的长度. SELECT LEN(column_name) FROM table_name ...
- mysql 查找小写字母_MySQL中查询时对字母大小写的区分
我相信很多人在mysql中查询时都遇到过mysql不区分字母大小写的情况:如以下例子: 1.SELECT * FROM `user` WHERE userpass = 'Z20'; 结果为: 2.SE ...
- MySQL消除笛卡尔积的方法_SQL查询中的笛卡尔积现象解决方法
一. 笛卡尔积 笛卡尔积是指在数学中,两个集合X和Y的笛卡尓积(Cartesian product),又称直积,表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员. ...
- mysql sql decode函数用法_SQL查询中DECODE函数和CASE WHEN 比较
一,DECODE函数 其基本语法为: Sql代码DECODE(value, if1, then1, if2, then2, if3, then3,...ifn, thenn, else) DECODE ...
- mysql sql 去除重复行_SQL查询语句去除重复行
1.存在两条完全相同的纪录 这是最简单的一种情况,用关键字distinct就可以去掉 select distinct * from table(表名) where (条件) 2.存在部分字段相同的纪录 ...
最新文章
- 阅读豆丁网----基于模型的混合多目标算法的研究
- 如何对单手和双手协同运动方向进行神经表征和解码?北理工研究团队给出了相关方案
- 第2期 | 国内脑机接口领域专家教授汇总(修改)
- AI部署前路坎坷,50%项目半路夭折
- ACM学习历程—Hihocoder [Offer收割]编程练习赛1
- web开发入门到深入-WebAssembly(1)
- Fiori elements执行过程解析:When click go in table list, odata service is sent
- linux程序打包安装,制作Linux下程序安裝包——使用腳本打包bin、run等安裝包
- rabbitmq学习——队列
- pythonweb开发工作内容_我的第一个python web开发框架(5)——开发前准备工作(了解编码前需要知道的一些常识)...
- 深入探索android热修复技术原理_打卡活动:技术书籍书单
- windows安装各版本python解释器和anaconda
- oa中获取当前用户信息
- (转)Tomcat目录结构
- 计算机国际标准编码,【计算机基础】常用编码格式
- windows 安全删除硬件并弹出媒体 选项灰色、无法弹出
- 黎曼ζ(2)的导数:ζ'(2)=-1
- itest考试切屏能检测出来吗_itest测试
- 2022年高教杯国赛数学建模思路分享
- 2.1.4.2 端口Banner信息获取
热门文章
- C#高级语法之泛型、泛型约束,类型安全、逆变和协变(思想原理)
- .NET开发框架(八)-服务器集群之网络负载平衡(视频)
- 译 | 使用Roslyn分析器高效编写更好的代码
- 开源 , KoobooJson一款高性能且轻量的JSON框架
- WebApi网关之Bumblebee和Ocelot性能对比
- .NET跨平台实践:Linux .Net Core自宿主应用程序瘦身记
- 基于VS2017的Docker Support体检ASP.NET Core站点的Docker部署
- Docker容器环境下ASP.NET Core Web API应用程序的调试
- .NET Core 1.0发布:微软开源跨平台大布局序幕
- Asp.Net Core 发布和部署(Linux + Jexus )