MySQL中的SUM函数使用教程

MySQL的SUM函数是用来找出记录中各种的字段的总和。

要了解SUM函数考虑EMPLOYEE_TBL表具有以下记录:

mysql> SELECT * FROM employee_tbl;
+------+------+------------+--------------------+
| id  | name | work_date | daily_typing_pages |
+------+------+------------+--------------------+
|  1 | John | 2007-01-24 |        250 |
|  2 | Ram | 2007-05-27 |        220 |
|  3 | Jack | 2007-05-06 |        170 |
|  3 | Jack | 2007-04-06 |        100 |
|  4 | Jill | 2007-04-06 |        220 |
|  5 | Zara | 2007-06-06 |        300 |
|  5 | Zara | 2007-02-06 |        350 |
+------+------+------------+--------------------+
7 rows in set (0.00 sec)

现在,假设根据上面的表想来计算所有的dialy_typing_pages的总数,那么可以通过使用下面的命令:

mysql> SELECT SUM(daily_typing_pages)
  -> FROM employee_tbl;
+-------------------------+
| SUM(daily_typing_pages) |
+-------------------------+
|          1610 |
+-------------------------+
1 row in set (0.00 sec)

可以使用GROUP BY子句设置的各种记录的总和。下面的例子将总结所有相关的记录一个人,打印纸的每一个人总数。

mysql> SELECT name, SUM(daily_typing_pages)
  -> FROM employee_tbl GROUP BY name;
+------+-------------------------+
| name | SUM(daily_typing_pages) |
+------+-------------------------+
| Jack |           270 |
| Jill |           220 |
| John |           250 |
| Ram |           220 |
| Zara |           650 |
+------+-------------------------+
5 rows in set (0.17 sec)
(0)

相关推荐

  • mysql中sum float类型使用小数点的方法

    方法一:最好的办法是将float字段改为decimal(16,6).具体方法:可设置一个临时字段,结合MySQL的关键字binary进行准确复制等.方法二:使用binary关键字解决.具体操作为"select sum(binary 字段名(float类型))"BINARY不是函数,是类型转换运算符,它用来强制它后面的字符串为一个二进制字符串例子: 复制代码 代码如下: "select sum(a.number*binary(b.price)) as total       

  • Mysql中的count()与sum()区别详细介绍

    首先创建个表说明问题 复制代码 代码如下: CREATE TABLE `result` ( `name` varchar(20) default NULL, `subject` varchar(20) default NULL, `score` tinyint(4) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 插入一些数据, 复制代码 代码如下: insert into result values ('张三','数学',90), ('张三'

  • MYSQL中有关SUM字段按条件统计使用IF函数(case)问题

    今天群里有人问了个问题是这样的:  然后有群友是这样回答的 复制代码 代码如下: select name,sum(case when stype=4 then money*(-1) else money end ) as M from table group by name 我想了想,应该可以用IF函数 于是改了下 复制代码 代码如下: select name,sum(money*IF(stype=4,-1,1)) as M from table group by name 两种方式那种更效率还

  • MySQL中的SUM函数使用教程

    MySQL的SUM函数是用来找出记录中各种的字段的总和. 要了解SUM函数考虑EMPLOYEE_TBL表具有以下记录: mysql> SELECT * FROM employee_tbl; +------+------+------------+--------------------+ | id | name | work_date | daily_typing_pages | +------+------+------------+--------------------+ | 1 | Jo

  • MySQL中的max()函数使用教程

    MySQL的max()函数是用来找出一个记录集中的最大值记录. 要了解MAX功能考虑的EMPLOYEE_TBL表具有以下记录: mysql> SELECT * FROM employee_tbl; +------+------+------------+--------------------+ | id | name | work_date | daily_typing_pages | +------+------+------------+--------------------+ | 1

  • MySQL中的CONCAT函数使用教程

    使用MySQL CONCAT()函数将两个字符串连接起来,形成一个单一的字符串.试试下面的例子: mysql> SELECT CONCAT('FIRST ', 'SECOND'); +----------------------------+ | CONCAT('FIRST ', 'SECOND') | +----------------------------+ | FIRST SECOND | +----------------------------+ 1 row in set (0.00

  • 浅谈Mysql中类似于nvl()函数的ifnull()函数

    IFNULL(expr1,expr2) 如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2.IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境. mysql> select IFNULL(1,0); -> 1 mysql> select IFNULL(0,10); -> 0 mysql> select IFNULL(1/0,10); -> 10 mysql> select IFNULL(1/0,'yes'); ->

  • MySQL中的常用函数

    在MySQL中,函数不仅可以出现在select语句及其子句中,而且还可以出现在update.delete语句中. 常用的函数有: 1. 字符串函数:主要用于处理字符串. 2. 数值函数:主要用于处理数字. 3. 日期和时间函数:主要用于处理日期和事件. 4. 系统信息函数:获取系统信息. 1. 使用字符串函数: 虽然每种数据库都支持SQL,但是每种数据库拥有各自所支持的函数. 1.1 合并字符串函数concat() 和 concat_ws(): 在MySQL中可以通过函数concat()和con

  • Mysql中禁用与启动触发器教程【推荐】

    在使用MYSQL过程中,经常会使用到触发器,但是有时使用不当会造成一些麻烦.有没有一种办法可以控制触发器的调用呢? 触发器顾名思义就是数据库在一定的调条件自动调用的SQL语句,触发器拒绝了人工调用的过程,由数据库MYSQL数据库自动的调用,执行更加高效. 如何禁用触发器呢? 1.新建两张表: 表demo_1: CREATE TABLE `demo_1` ( `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', `STUNAME` varchar(3

  • MySql中的json_extract函数处理json字段详情

    目录 前言 1. 使用方式 2. 使用演示 3. 小结 前言 在db中存储json格式的数据,相信大家都或多或少的使用过,那么在查询这个json结构中的数据时,有什么好的方法么?取出String之后再代码中进行解析? 接下来本文将介绍一下Mysql5.7+之后提供的json_extract函数,可以通过key查询value值 1. 使用方式 数据存储的数据是json字符串,类型为我们常用的varchar即可 语法: JSON_EXTRACT(json_doc, path[, path] -) 若

  • Mysql中的concat函数(拼接函数)详解

    目录 Mysql中的concat函数(拼接函数) 概述 Mysql Concat函数 Mysql Concat_Ws函数 Mysql中的concat函数(拼接函数) 概述 很多时候,我们需要将不同地方获得的字符串拼接在一起,此时就需要使用CONCAT和CONCAT_WS函数 要连接两个或多个引用的字符串值,请将字符串放在一起,如下所示: mysql> SELECT 'MySQL ' 'String ' 'Concatenation'; +----------------------------+

  • mysql中存储过程、函数的一些问题

    最近写一些mysql的存储过程和函数,发现网上比较有价值的文档很少,大都是照着手册上抄来的,有些实际问题解决不了,比如用变量作表名. 经过反复调试,总算找到解决办法,一下是一些简单的记录,比较零碎.部分内容转自http://my.opera.com/Dereky/blog/show.dml/322997 1.用变量做表名: 简单的用set或者declare语句定义变量,然后直接作为sql的表名是不行的,mysql会把变量名当作表名.在其他的sql数据库中也是如此,mssql的解决方法是将整条sq

  • 在MySQL中使用序列的简单教程

    序列是一组整数1,2,3,...中生成的顺序.序列中经常使用的数据库,因为很多应用都需要一个表中的每一行包含一个独特的值和序列提供了一个简单的方法来产生.本章介绍如何使用MySQL中的序列. 使用自动递增列: 在MySQL中使用序列最简单的方法是定义一个AUTO_INCREMENT列,剩下的事情留给MySQL处理. 实例: 试试下面的例子.这将创建表之后,它会在此表中它不是必需的记录ID插入几行,因为它由MySQL自动递增. mysql> CREATE TABLE insect -> ( -&

随机推荐