如何在mysql表中选择、平均和排序

2024-01-01

i have a table in mySql like in this picture
enter image description here

我想编写一个查询,其结果将按 LESSON 列分组,并添加新行,该新行是 LESSON 列的平均值和 CNT 列值之和......
对于这个查询我使用这个

我使用这个查询,但它给出的结果如图 3 所示,在这种情况下我无法按 PERCENT 排序

select no, STUD_ID,CLASS,LESSON, AVG(PERC) as PERC,SUM(CNT) as CNT from t_lesson where LESSON='CHEM' group by CLASS
union all
select no,STUD_ID,CLASS,'AVERAGE' as LESSON, AVG(PERC) as PERC, SUM(CNT) as CNT from t_lesson where LESSON='CHEM' group by LESSON

看起来您正在选择所有行lesson is CHEM,然后您需要一个额外的行来表示百分比的平均值。怎么样:

select *
from (
  -- this part gets all the "CHEM" rows
  select * 
  from <your_table_name>
  where lesson = "CHEM"
  union
  -- this parts selects the aggregate row
  select 
    NULL            as `no`, 
    NULL            as `stud_id`, 
    NULL            as `class`,
    "average"       as `lesson`,
    avg(percentage) as `perc`, 
    sum(count)      as `cnt`
  from <your_table_name>
  where lesson = "CHEM"
) q
order by `perc` desc;

请注意,排序是由外部查询执行的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在mysql表中选择、平均和排序 的相关文章

  • MySQL:如何获取每个分组的x个结果数[重复]

    这个问题在这里已经有答案了 可能的重复 mysql 在 GROUP BY 中使用 LIMIT 来获取每组 N 个结果 https stackoverflow com questions 2129693 mysql using limit w
  • 为什么我在 MySQL 中设置更大的 INT 数据类型长度时没有收到错误消息?

    我对 MySql 中的数据类型长度有点困惑 我阅读了参考手册http dev mysql com doc refman 5 0 en data types html http dev mysql com doc refman 5 0 en
  • 如何使用wireshark清晰捕获mysql查询sql

    因为我们使用远程开发Mysql服务器 所以不能轻易检查查询sql 如果使用本地服务器可以tail f general log file查看调用某个http接口时执行了哪些sql 所以我安装了一个wireshark捕获这些从本地发送的查询sq
  • PHP使用auto_increment生成短唯一ID?

    我想生成一个简短的 唯一的 ID 而不必检查冲突 我目前正在做类似的事情 但是我当前生成的 ID 是随机的 并且在循环中检查冲突很烦人 并且如果记录数量显着增加 将会变得昂贵 通常担心冲突不是问题 但我想要生成的唯一 ID 是一个由 5 8
  • 如何导出带有数据的 MySQL 架构?

    我有一个完整的架构 其中有许多表 其中包含 MySQL 查询浏览器中的数据 现在我想将这个包含所有表 数据的完整数据库发送给我的同事 我怎样才能将其发送给我的同事 以便他可以将这个完整的架构放入他的 MySQL 查询浏览器中 Thanks
  • MySQL集群启动失败

    这不是我第一次创建ndbcluster 但我没有收到这样的问题 我正在关注本手册 https hub docker com r mysql mysql cluster by mysql团队 我正在使用回显的默认配置在此 GitHub 存储库
  • 日期时间与时间戳字段

    我是 MySQL 数据库的新手 您是否建议在表创建中使用日期时间或时间戳字段以及原因 我正在使用 MySQL 5 7 和 innodb 引擎 Thanks 我会用TIMESTAMP对于任何需要自动管理的事情 因为它支持诸如ON UPDATE
  • mysql表中的数据非常大。即使 select 语句也需要很多时间

    我正在开发一个数据库 它是一个相当大的数据库 有 13 亿行和大约 35 列 这是我检查表状态后得到的结果 Name Table Name Engine InnoDB Version 10 Row format Compact Rows 1
  • 无法在 mysql-apt-config [Ubuntu 14.04] 中选择“确定”

    我使用的是 Ubuntu 14 04 sudo apt get update总是给我这个选项来配置 mysql apt config 我尝试选择版本 按 tab gt 在 确定 上突出显示的键 按 Enter 但没有任何反应 它再次返回并突
  • 使用来自另一个数据库的选择查询更新 mysql 表

    我有两个数据库 我想用另一个数据库表中的值更新一个表 我正在使用以下查询 但它不起作用 UPDATE database1 table1 SET field2 database2 table1 field2 WHERE database1 t
  • MySQL 可选的带有 MATCH 的 LEFT JOIN

    我有以下查询 它对 MySQL Innodb 数据库中同一搜索词的两个不同表中的两列执行全文搜索 SELECT Id MATCH tb1 comment tb2 comment AGAINST search term IN BOOLEAN
  • 更改mysql数据库表中的日期格式

    大家早上好 只是一个简单的问题 在我现有的 MySql 数据库中 我几乎没有包含日期 的列 目前这些是年 月 日格式 但现在我需要将其全部更改为年 月 日格式 我试过了select date format curdate d m Y 但它不
  • 如何在查询语句之外从mysql查询中获取值?

    这是下面的函数console log function quo value value connection query SELECT role from roles where id 1 function error results fi
  • jquery-traversing:选择 -> 选项 -> 文本

    我想将变量与选择 gt 选项 gt 选择的文本进行比较 以更改 选定 属性 这是我的代码 它有效 但我认为这不是最好的编写方式 请原谅我的英语 我使用谷歌翻译寻求帮助嘿嘿嘿 var lista example 1 id option eac
  • MySQL 和 PHP 参数 1 作为资源

    好吧 当我运行下面提到的代码时 PHP 向我抛出此错误 在日志中 Error mysql num rows 期望参数 1 为资源 第 10 行 place 中给出的字符串 9 11号线 queryFP SELECT FROM db coun
  • 显示和随机化 php 数组

    我有一个显示结果的数组 如下所示 Array 0 gt 71 1 gt 56 2 gt 64 3 gt 82 4 gt 90 5 gt 80 6 gt 65 7 gt 62 8 gt 14 9 gt 3 我的代码是 while row my
  • Mysql带限制的删除语句

    我试图从表中删除行 但出现错误 DELETE FROM chat messages ORDER BY timestamp DESC LIMIT 20 50 我在 50 时收到此错误 您的 SQL 语法有错误 检查与您的 MySQL 服务器版
  • MySQL“列计数与第 1 行的值计数不匹配”是什么意思

    这是我收到的消息 ER WRONG VALUE COUNT ON ROW 列计数与第 1 行的值计数不匹配 这是我的全部代码 我的错误在哪里 DROP TABLE student CREATE TABLE employee emp id I
  • 针对约 225 万行的单表选择查询的优化技术?

    我有一个在 InnoDB 引擎上运行的 MySQL 表 名为squares大约有 2 250 000 行 表结构如下 squares square id int 7 unsigned NOT NULL ref coord lat doubl
  • MySQL 概念:会话与连接

    我对 MySQL 的概念有点困惑 会话与连接 当谈论连接到 MySQL 时 我们使用连接术语 连接池等 然而在 MySQL 在线文档中 http dev mysql com doc refman 4 1 en server system v

随机推荐

  • Spring Boot中处理嵌入式Tomcat异常

    我们遇到嵌入式 Tomcat 抛出的问题IllegalArgumentException来自LegacyCookieProcessor 它抛出 500 HTTP 响应代码 我们需要处理异常并对其执行某些操作 具体来说 将其作为 400 发送
  • Android中TextView的TextAppearance属性

    我正在开发我正在使用的 Android 应用程序TextView在屏幕上显示文本 我将此属性用于TextView设置文本的大小android textAppearance android attr textAppearanceMedium
  • 使用 Cognito 令牌访问 S3 时收到“AccessDenied”

    我正在尝试在存储桶上使用 listObjects 操作 这是通过 WebService 访问的 我不想授予用户控制台访问权限 角色政策 Version 2012 10 17 Statement Effect Allow Action mob
  • U2Net模型在android中的使用

    我按照以下步骤将原始 u2net 模型权重文件 u2net pth 转换为tensorflow lite说明 https qiita com PINTO items ed06e03eb5c007c2e102 就转换成功了 但是我在tenso
  • 了解分段错误的堆栈跟踪

    我正在做一个snprintf并出现段错误 当我像这样在 gdb 上加载核心文件时 gdb my executable core 并做了bt为了获得回溯 我得到了以下内容 Program terminated with signal 11 S
  • 构建 OpenAPI 响应,包括 oneOf 或 allOf

    我正在尝试使用 OpenAPI 3 从各种架构组件构建响应 响应基本上分为三个部分 其他端点使用的共享组件 即成功 失败标志 components schemas core response schema inside allOf 属性al
  • 用 Angular 上传文件?

    我知道这是一个非常普遍的问题 但我无法在 Angular 2 中上传文件 我努力了 1 http valor software com ng2 file upload http valor software com ng2 file upl
  • 将用户控件与 ViewModel 类关联

    当我定义一个DataTemplate内联 Visual Studio 知道我要绑定的类型 并且该类型中的属性会在自动完成中出现 例如 在下面的代码中 我可以选择DisplayName从里面的自动完成列表FirstViewModel模板
  • jQuery 同时切换“幻灯片”和“淡入淡出”动画

    jQuery 有一个slideToggle and a fadeToggle 但他们在一起玩得不好 参见小提琴here http jsfiddle net Y2yvd div on click function span slideTogg
  • Spring Boot 自定义错误页面堆栈跟踪

    我在几个位置找到了如何使用 Spring boot 制作自定义错误页面 但我似乎无法弄清楚如何使其显示堆栈跟踪 这就是我所拥有的 Bean public EmbeddedServletContainerCustomizer containe
  • 从 WooCommerce 中的 apply_filters('prefix_xml_feeds_productname_variant') 函数获取数据

    我对 WordPress 和 WooCommerce 完全陌生 所以对糟糕的解释表示歉意 我有这个代码 text apply filters prefix xml feeds productname variant text product
  • 使用java代码计算S3上文件的行数

    使用java代码 是否可以计算AWS s3上文件的行数 而无需将其下载到本地计算机 取决于你所说的下载是什么意思 S3 中没有远程处理 您无法上传将在 S3 服务中执行的代码 可能的替代方案 如果问题是文件太大而无法存储在内存或本地磁盘中
  • 如何将一个值的所有权从 Rust 转移到 C 代码?

    我正在尝试使用 FFI 编写一些 Rust 代码 其中涉及 C 获取结构的所有权 fn some function let c SomeStruct new unsafe c function mut c I want c function
  • Spring Security 如何在跨 Web 应用程序请求的线程中管理 SecurityContext?

    在 SpringSecurity 中 它有一个类名 SecurityContextHolder 及其规范 将给定的 SecurityContext 与当前执行线程关联 对于Web应用程序 每当请求到达服务器时 Spring也会重新加载并在S
  • 对部分文本使用自定义字体

    Typeface robotoBold Typeface createFromAsset activity getAssets fonts Roboto Bold ttf Typeface robotoLight Typeface crea
  • 如何将 HTC android 手机连接到电脑作为调试设备

    我想将 HTC Desire 连接到电脑 仅作为调试设备 每次我插入数据线时 它都会在电脑上搜索 HTC Sync 软件 需要很长时间 直到手机上出现一条消息 例如 未找到 HTC Sync 请安装 之后手机就可以在eclipse中进行调试
  • 仅使用 proc 获取本地网络接口地址?

    如何仅使用以下命令获取所有网络接口的 IPv4 地址proc http linux die net man 5 proc 经过一番广泛的调查后 我发现了以下内容 ifconfig利用SIOCGIFADDR 这需要打开套接字并预先了解所有接口
  • 使用 OpenCV 从小图像中提取点描述符

    我正在尝试提取不同的点描述符 SIFT SURF ORB BRIEF 来构建视觉词袋 问题似乎是我使用的图像非常小 12x60px 使用密集提取器 我可以获得一些关键点 但是在提取描述符时 没有提取任何数据 这是代码 vector
  • 为什么大多数 S-Expression 语言都是动态类型的?

    为什么大多数Lisp 和Scheme 都是动态类型的 静态类型不会与它们的一些常见功能混合吗 键入和 s 表达式可以一起工作 请参阅类型化方案 http www ccs neu edu home samth typed scheme s 表
  • 如何在mysql表中选择、平均和排序

    i have a table in mySql like in this picture 我想编写一个查询 其结果将按 LESSON 列分组 并添加新行 该新行是 LESSON 列的平均值和 CNT 列值之和 对于这个查询我使用这个 我使用