MySQL聚合查询与联合查询操作实例
聚合查询
简介
聚合查询是在SELECT语句中使用一组聚合函数(比如SUM,AVG,MAX和COUNT等)在结果集上执行计算,返回一个统计值,而不是一列数据的列表。通常用于计算某一列的总和、平均值、最大/最小值、行数等。聚合查询能够提供有关群体的信息,而不是单独的行,这种信息对于分析数据和做出决策非常有用。
语法
SELECT [SELECT列表达式], [聚合函数]([列名])
FROM [表名]
[WHERE 条件]
[GROUP BY 列名]
[HAVING 条件]
[ORDER BY 列名 [ASC|DESC]]
实例
以students
表为例,其中存储了学生的姓名、年龄、课程分数等信息,下面通过一个示例来演示聚合查询的使用。
查询所有学生的总数:
SELECT COUNT(*) AS total_student_count
FROM students;
查询所有学生的平均年龄:
SELECT AVG(age) AS average_age
FROM students;
查询所有学生的课程分数总和:
SELECT SUM(score) AS total_score
FROM students;
查询所有学生的最高分数:
SELECT MAX(score) AS max_score
FROM students;
联合查询
简介
联合查询(UNION)指的是将两个或多个SELECT语句的结果集合并到一起。通常用于合并两个具有相似结构的表的数据,或者将查询结果分组并进行排序。
语法
SELECT [SELECT列表达式]
FROM [表1]
UNION [ALL]
SELECT [SELECT列表达式]
FROM [表2]
[ORDER BY 列名 [ASC|DESC]];
其中,ALL可选,表示保留重复的数据。
实例
以table1
和table2
为例,下面演示如何将两个表的结果集合并起来。
将table1
和table2
的结果集合并:
SELECT *
FROM table1
UNION
SELECT *
FROM table2;
将table1
和table2
的结果集合并后按id
排序:
SELECT *
FROM table1
UNION
SELECT *
FROM table2
ORDER BY id;
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL聚合查询与联合查询操作实例 - Python技术站