MariaDB中Avg()的使用是怎样,有什么技巧
Admin 2022-06-28 群英技术资讯 965 次浏览
本篇内容介绍了“MariaDB中Avg()的使用是怎样,有什么技巧”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!MariaDB Avg()函数用于检索表达式的平均值。
语法:
SELECT AVG(aggregate_expression)
FROM tables
[WHERE conditions];
或者 -
SELECT expression1, expression2, ... expression_n,
AVG(aggregate_expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, ... expression_n;
数据准备
在"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表的平均分数。参考以下查询语句 -
SELECT AVG(Score) AS "Average Score" FROM students;
执行上面查询语句,得到以下结果 -
MariaDB [testdb]> SELECT AVG(Score) AS "Average Score" FROM students;
+----------------+
| Average Score |
+----------------+
| 90.58333 |
+----------------+
1 row in set (0.04 sec)
也可以在AVG()函数使用数学公式。 例如,如果要将学生的平均成绩提高50%,则可以使用以下公式来计算:
当前数据库中的记录如下 -
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 |
+------------+--------------+-----------------+----------------+-------+
6 rows in set (0.07 sec)
示例:
SELECT AVG(score * 1.5) AS "New Score" FROM students;
执行上面查询语句,得到以下结果 -
MariaDB [testdb]> SELECT AVG(score * 1.5) AS "New Score" FROM students;
+-----------+
| New Score |
+-----------+
| 135.87500 |
+-----------+
1 row in set (0.01 sec)
为了更容易说明问题,这里再插入一条记录 -
INSERT INTO students
(student_name, student_address,score, admission_date)
VALUES('Maxsu','Haikou', 90,'2017-11-17 00:00:00');
当前students表中,有以下数据 -
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-17 | 90.0 |
+------------+--------------+-----------------+----------------+-------+
7 rows in set (0.00 sec)
参考下查询语句 -
SELECT student_name, AVG(score) AS "Average Salary"
FROM students
GROUP BY student_name;
执行上面查询语句,得到以下结果 -
MariaDB [testdb]> SELECT student_name, AVG(score) AS "Average Salary"
-> FROM students
-> GROUP BY student_name;
+--------------+----------------+
| student_name | Average Salary |
+--------------+----------------+
| Blaba | 100.00000 |
| Crurry | 86.00000 |
| JMaster | 91.00000 |
| Kobe | 89.00000 |
| Mahesh | 78.00000 |
| Maxsu | 94.75000 |
+--------------+----------------+
6 rows in set (0.02 sec)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章给大家分享的是MariaDB中order by子句的相关内容。ORDER BY子句是对查询的结果进行排序,小编觉得挺实用的,因此分享给大家做个参考,文中介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
在本章中,我们将学习如何从表中选择数据。下文的讲解详细,步骤过程清晰,对大家进一步学习和理解相关知识有一定的帮助。有这方面学习需要的朋友就继续往下看吧!
如前面的课程所讨论的,MariaDB在某些情况下允许重复记录和表。 由于不同的数据或对象类型,或作为操作对象的唯一寿命或存储的结果,这些重复中的一些事实上不是重复的。 这些副本通常也没有问题。
MariaDB如何安装?一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解一下,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
如前面讨论中提到的,ORDER BY子句对语句的结果进行排序。 它指定操作数据的顺序,并包括按升序(ASC)或降序(DESC)顺序排序的选项。 在省略订单规格时,默认顺序为升序。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008