MariaDB中的sum()函数用来做什么,用法是怎样
Admin 2022-06-28 群英技术资讯 911 次浏览
MariaDB SUM()
函数用于返回表达式求和的值。
语法:
SELECT SUM(aggregate_expression)
FROM tables
[WHERE conditions];
数据准备
在"testdb"
数据库中创建一个"students"
表,并插入一些数据。参考以下创建语句 -
USE testdb;
DROP TABLE students;
-- 创建新表
CREATE TABLE students(
student_id INT NOT NULL AUTO_INCREMENT,
student_name VARCHAR(100) NOT NULL,
student_address VARCHAR(40) default NULL,
admission_date DATE,
score float(4, 1) default NULL,
PRIMARY KEY ( student_id )
);
-- 插入数据
INSERT INTO students
(student_id, student_name, student_address,score, admission_date)
VALUES(1,'Maxsu','Haikou', 99.5,'2017-01-07 00:00:00');
INSERT INTO students
(student_id, student_name, student_address, score, admission_date)
VALUES
(2,'Crurry','Beijing',86,'2016-05-07 00:00:00'),
(3,'JMaster','Beijing',91,'2016-05-07 00:00:00'),
(4,'Mahesh','Guangzhou',78,'2016-06-07 00:00:00'),
(5,'Kobe','Shanghai',89,'2016-02-07 00:00:00'),
(6,'Blaba','Shengzhen',100,'2016-08-07 00:00:00');
示例:
计算student_id
大于1
的Student
表的总分数。参考以下查询语句 -
SELECT SUM(Score) AS "Total Score"
FROM students
WHERE student_id > 1;
执行上面查询语句,得到以下结果 -
MariaDB [testdb]> SELECT SUM(Score) AS "Total Score"
-> FROM students
-> WHERE student_id > 1;
+-------------+
| Total Score |
+-------------+
| 444.0 |
+-------------+
1 row in set (0.00 sec)
可以使用SUM
函数的DISTINCT
子句来避免重复值的总和。
再插入一条重复的数据 -
INSERT INTO students
(student_name, student_address,score, admission_date)
VALUES('Maxsu','Haikou', 99.5,'2017-11-07 00:00:00');
当前数据库中的记录如下 -
MariaDB [testdb]> select * from students;
+------------+--------------+-----------------+----------------+-------+
| student_id | student_name | student_address | admission_date | score |
+------------+--------------+-----------------+----------------+-------+
| 1 | Maxsu | Haikou | 2017-01-07 | 99.5 |
| 2 | Crurry | Beijing | 2016-05-07 | 86.0 |
| 3 | JMaster | Beijing | 2016-05-07 | 91.0 |
| 4 | Mahesh | Guangzhou | 2016-06-07 | 78.0 |
| 5 | Kobe | Shanghai | 2016-02-07 | 89.0 |
| 6 | Blaba | Shengzhen | 2016-08-07 | 100.0 |
| 7 | Maxsu | Haikou | 2017-11-07 | 99.5 |
+------------+--------------+-----------------+----------------+-------+
7 rows in set (0.00 sec)
示例:
SELECT SUM(DISTINCT Score) AS "Total Score"
FROM students
WHERE student_name = 'Maxsu';
执行上面查询语句,得到以下结果 -
MariaDB [testdb]> SELECT SUM(DISTINCT Score) AS "Total Score"
-> FROM students
-> WHERE student_name = 'Maxsu';
+-------------+
| Total Score |
+-------------+
| 99.5 |
+-------------+
1 row in set (0.00 sec)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
在MariaDB中,WHERE子句与SELECT,INSERT,UPDATE和DELETE语句一起使用来选择或更改想要更改的满足指定特定行记录。它是一个在表名后面出现的语句。
在本章中,我们将学习删除表。下文有详解方法和实例,内容详细,逻辑清晰,有需要的朋友可以参考,希望大家阅读完这篇文章后能有所收获,那么下面就一起来了解一下吧。
MariaDB LEFT OUTER JOIN用于返回ON条件中指定的左侧表中的所有行,并仅返回满足连接条件的其他表中的行。
MariaDB是什么?MariaDB的特性有哪些?有不少朋友对于这个的问题会存在疑惑,下面小编给大家整理和分享了相关知识和资料,易于大家学习和理解,有需要的朋友可以借鉴参考,下面我们一起来了解一下吧。
MariaDB与各种编程语言和框架(如PHP,C#,JavaScript,Ruby on Rails,Django等)合作良好。 PHP仍然是所有可用语言中最受欢迎的语言,因为它的简单性和历史足迹。 本指南将重点介绍与MariaDB合作的PHP。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008