在数据库操作中常常会将某一列的具有相似性质的数据进行求和,昨天在做的项目中遇到了。
后来请教了一下自己又摸索了一下,得出了解决方案,那就是<strong>分组求和</strong>。
需求:将某列数据求和
例子:

数据库内容为:

根据record_type进行分组再求和,也就是将1、2、3三种类型进行分组,所以结果预期为三行

再一种是根据record_date来分组,由于日期有两组,故预期分组也为两组,结果为同一日期的c、d列数据相加

总结:当需要进行对某一列的具有相似条件(对应于where中的条件)的数据进行合并时,使用group by将记录分组,再使用聚合函数对数据进行需要的操作。这样就可以使用一条语句将所有的数据进行分组求和。

创建例子中的数据的SQL语句为

 1 CREATE DATABASE /*!32312 IF NOT EXISTS*/`group` /*!40100 DEFAULT CHARACTER SET utf8 */;
 2
 3 USE `group`;
 4
 5 /*Table structure for table `test` */
 6
 7 DROP TABLE IF EXISTS `test`;
 8
 9 CREATE TABLE `test` (
10   `id` int(10) NOT NULL AUTO_INCREMENT,
11   `record_date` date DEFAULT NULL,
12   `record_type` int(10) DEFAULT NULL,
13   `c` int(10) DEFAULT NULL,
14   `d` int(10) DEFAULT NULL,
15   PRIMARY KEY (`id`)
16 ) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;
17
18 /*Data for the table `test` */
19
20 insert  into `test`(`id`,`record_date`,`record_type`,`c`,`d`) values (1,'2013-10-14',1,1000,10000),(2,'2013-10-15',1,2000,20000),(3,'2013-10-14',2,3000,30000),(4,'2013-10-15',2,4000,40000),(5,'2013-10-14',3,5000,50000);

查询语句为

SELECT SUM(c) 'c列数据的和',SUM(d)'d列数据的和'
FROM test
WHERE record_date BETWEEN '2013-10-13' AND '2013-10-16'
GROUP BY record_type
ORDER BY record_type ASC

转载于:https://www.cnblogs.com/jayxhj/p/3408018.html

分组求和,将一列的数据求和相关推荐

  1. group by 分组后 再对所有的数据求和

    SELECT category, count( category ) AS category FROM dept GROUP BY category WITH ROLLUP; WITH ROLLUP ...

  2. access在sql中横向求和_使用查询对数据求和

    准备一些示例数据 本文中的操作方法部分提供了示例数据的表. 操作步骤使用示例表, 以帮助你了解聚合函数的工作原理. 如果愿意, 您可以选择将示例表添加到新的或现有的数据库中. Access 提供了几种 ...

  3. access在sql中横向求和_access在sql中横向求和_求和还用Sum函数就out了,快捷键Alt+=一秒搞定,操作简单更高效......

    日常工作进行数据整理的时候,求和这个操作对于大家是再熟悉不过了.简单的数据求和绝大多数同学都会想到一个函数,那就是Sum函数. 如上图所示,我们需要对人员的1-3月份数据进行横向和纵向的求和汇总.一般 ...

  4. Excel对不等的合并单元格进行多列数据求和操作

    如下图所示,这下小张遇到大难题了,按照合并单元格对前面3个月的销量,进行求和统计,关键是合并的单元格还不一样 (方方格子插件) 1.先看动图演示 2.插入辅助列后,我们将辅助列和数据区域进行统一的选择 ...

  5. vue element el-table表格勾选求和 el-table 勾选获取表格某几列数据求和

    vue element el-table 表格勾选获取几列数据求和 el-table表格勾选求和 先看案例如下图所示:el-table 勾选后求出支付金额数据,计算出总金额数据. 我们来一步步分析方便 ...

  6. excel一列求和_让excel填写数据后自动填充公式运算的方法

    工作中往往有这样的一种情况,如期末考试完成了,需要在excel中输入班里学生各科的成绩及总分,很多人的做法是,先输入各科的成绩后,再用公式求出第一个学生的总分后,再用拖拉的方式计算剩余学生的成绩.那有 ...

  7. python对excel某一列求和-96、python操作excel求和

    这里介绍如何用python来自动完成我们的excel工作. 本文的目的是展示一些常见的Excel任务,以及如何在python pandas中执行类似的任务.例子微不足道,但重要的是通过这个例子来循序渐 ...

  8. js表格中将每行的两个数据求和显示_python数据分析相关【一】

    一.numpy简单运算 数组运算--可以理解为矩阵运算 dtype属性可以显示数据类型,并可以通过其指定数据类型 可以通过astype方法调整数据类型 由bool类型变成int类型 通过numpy生成 ...

  9. excel合并同类项数据求和

    2019独角兽企业重金招聘Python工程师标准>>> 操作步骤: 首先查看一下原始数据,A列是姓名列,包含重复姓名.B列是对应的数量数据. 选中AB列的数据区域,选择[插入]-[数 ...

最新文章

  1. reporting Server組件不全引起的致命錯誤
  2. c#调用命令行遇到带空格的路径
  3. MySQL存储过程的创建及调用
  4. 只有当前用户或管理员能登录到此计算机,当前登录的用户没有管理员权限。请重新以管理员身份登录,或与您的pc管理员联系。...
  5. Mongodb实战使用指南
  6. [渝粤教育] 平顶山学院 传播理论与技巧 参考 资料
  7. Linux四种共享内存技术(附源码):SystemV、POSIX mmap、memfd_create、dma-buf
  8. Python版选择排序算法
  9. utf-8和gbk的区别
  10. TensorFlow之Numpy(3)
  11. fluidsim元件库下载_FluidSIM5|FluidSIM(液压气动仿真软件)下载 v5.0中文免费版 附安装教程 - 121下载站...
  12. SQL SERVER2008查询分析器的基本使用
  13. 爬取豆瓣电影排行版数据
  14. 微服务守护神-Sentinel-降级规则
  15. Batman+joker乱谈
  16. 前端文字点击出现蓝底
  17. 关于8583报文详解
  18. java网络编程技术有哪些_Java网络编程技术
  19. 超级马里奥代码_任天堂源代码泄露,引出《超级马里奥64》隐藏24年的角色
  20. ESP8266刷固件

热门文章

  1. 《刻意练习:如何从新手到大师》——读书笔记(未完待续)
  2. 【拼多多研究报告】一个被忽视的社交电商搅局者
  3. 计算机技术报告的英语范文,英语课题研究工作报告范文
  4. 在硬件设备上运行Android应用程序
  5. Windows7系统U盘加密方法
  6. lammps教程:lj/cut/coul力场参数设置详解
  7. PMP认证-项目管理认证好处及优势
  8. geneHapR做基因单倍型分析
  9. Ceph分布式文件系统集群搭建详解
  10. MySQL官网下载方法