首页 > 数据库 >mysql多字段分组

mysql多字段分组

时间:2023-02-13 13:37:08浏览次数:41  
标签:GROUP sum createTime wellid 分组 mysql 多字段


文章目录

  • ​​mysql多字段分组​​
  • ​​group by 语法​​
  • ​​多字段分组​​
  • ​​GROUP BY与ORDER BY一起使用(分组排序)​​
  • ​​使用having过滤分组​​

mysql多字段分组

group by 语法

分组查询是对数据按照某个或多个字段进行分组,MYSQL中使用group by关键字对数据进行分组,基本语法形式为:

[GROUP BY 字段][HAVING <条件表达式>]

多字段分组

使用GROUP BY可以对多个字段进行分组,GROUP BY关键字后面跟需要分组的字段,MYSQL根据多字段的值来进行层次分组,分组层次从左到右,即先按照第1个字段分组,然后在第1个字段值相同的记录中,再根据第2个字段的值进行分组,以此类推。

GROUP BY与ORDER BY一起使用(分组排序)

某些情况下需要对分组进行排序,order by用来对查询的记录排序,如果和GROUP BY一起使用,就可以完成对分组的排序

例如下表:

mysql多字段分组_数据库


将上表中数据按照wellid和年月的格式分组统计:

sql语句:

select wellid,sum(number) as sum,DATE_FORMAT(time,'%Y-%m') as createTime 
from well
GROUP BY wellid,createTime
order by createTime;

统计结果:

mysql多字段分组_数据库_02

使用having过滤分组

GROUP BY可以和HAVING一起限定显示记录所需要满足的条件,只有满足条件的分组才会被显示
还是上面张表,我们这次限定只要2020年12月之后的数据:

select wellid,sum(number) as sum,DATE_FORMAT(time,'%Y-%m') as createTime 
from well
GROUP BY wellid,createTime
having createTime>'2020-12'
order by createTime;

查询结果:

mysql多字段分组_sql_03


标签:GROUP,sum,createTime,wellid,分组,mysql,多字段
From: https://blog.51cto.com/u_15961549/6053964

相关文章

  • 低成本运维软件WGCLOUD - 主机分组管理介绍使用
    有时候我们主机比较多,不同的项目想进行分组管理WGCLOUD监测平台是支持分组的,不过默认没有启用该功能,只要修改个配置项就可以使用主机分组了在server/config/application.yml......
  • docker 安装mysql
    1,dockerpullmysql:5.7.41具体镜像查看docker官网仓库2,创建容器在本地的映射文件夹mkdir-p/root/mysql/data/root/mysql/logs/root/mysql/conf3,创建mysql配置......
  • 聊聊Mysql
    大体来说,MySQL可以分为Server层和存储引擎层两部分:  Server层:包括连接器、查询缓存、分析器、优化器、执行器等,涵盖MySQL的大多数核心服务功能,以及所有的内置函数(如......
  • mac端忘记mysql登录密码,进行密码重置
    一、mac--系统偏好设置,找到最下方的mysql,点击关闭。二、点击stop命令或者在终端输入命令行,选择其中一个即可:sudo/usr/local/mysql/support-files/mysql.serverstop......
  • 分组背包问题
    //没有状态压缩#include<bits/stdc++.h>usingnamespacestd;constintN=210;intn,m;intv[N][N],w[N][N],s[N];intf[N][N];intmain(){cin>>n>>m;......
  • Mysql中的索引
    Mysql中的索引分类MySQL索引分为以下几种:1.唯一索引:一般用来保证字段唯一性,一般在主键和外键上应用。2.普通索引:早期的索引,一个表最多可以由32个索引,要求有唯一的索引......
  • MySQL-利用binlog恢复数据
    MySQL-利用binlog恢复数据  这一篇文章里,我们来记录使用mysql-binlog来恢复数据的整个过程   一、前期准备  1、建库建表  创建数据库blog以及下面的a......
  • MySQL--半同步复制与参数slave_compressed_protocol
    问题场景MySQL版本:5.7.26-29-logPerconaServer(GPL)操作系统版本:CentOSLinuxrelease7.6.1810(Core)BINLOG产生速度:问题描述配置半同步的集群频繁报警,提示集群......
  • macos 将 mysql 加入环境变量
    今天在mac上安装mysql安装完成后发现mysql命令并没有加入系统环境变量手动添加步骤:在~目录下新建.bash_profile$touch.bash_profile打开.bash_profile文件......
  • mysql使用sql语句查询数据库所有表注释已经表字段注释
    场景:1.要查询数据库"mammothcode"下所有表名以及表注释/*查询数据库‘mammothcode’所有表注释*/SELECTTABLE_NAME,TABLE_COMMENTFROMinformation_schema.TA......