Python-MySQL学习笔记(三):表记录查询(2)

聚合函数

分组后需要对组里对数据内容做处理,就需要使用一些函数,这类函数称为聚合函数。


COUNT(列名)

COUNT 函数用于统计行的个数。

SELECT COUNT(name) AS 'JS>80的人数' FROM exam_result WHERE JS>80```

在这里插入图片描述


SUM(列名)

SUM 函数用于求和。

SELECT name,SUM(JS) AS JS总成绩 FROM exam_result GROUP BY name;

Python-MySQL学习笔记(三):表记录查询(2)_第1张图片


HAVING函数

HAVING 函数对分组后对函数进行过滤。

  • WHERE 语句只能用在分组之前的筛选,HAVING 可以用在分组只会的筛选。
  • 使用 WHERE 语句的地方都可以用 HAVING 进行替换。
  • HAVING 中可以使用聚合函数,WHERE 中不行。
  • HAVING 的查询效率低于 WHERE。
SELECT name,SUM(JS) AS JS总成绩 FROM exam_result GROUP BY name HAVING SUM(JS)>150;

在这里插入图片描述


AVG(列名)

AVG 函数用于求平均值。
注意值中"NULL"的影响,可以使用 IFNULL 函数进行处理)!

SELECT name,SUM(JS) AS JS总成绩 FROM exam_result GROUP BY name HAVING SUM(JS)>150;

在这里插入图片描述

MAX/MIN(列名)

MAX/MIN 函数用于求最大值和最小值。

SELECT MAX(JS) AS JS最高分 , MIN(Python) AS Python最低分 FROM exam_result;

在这里插入图片描述


约束条件

LIMIT num1, **num2;

LIMIT 关键字的使用,可以在其后跟一个数字或两个数字,先看下面的例子:

  • 用法一:LIMIT num1 —— 显示 num1 行
SELECT * FROM exam_result LIMIT 3;

在这里插入图片描述

  • 用法二:LIMIT num1 num2 —— 跳过数据表中 num1 行,显示 num2 行
SELECT * FROM exam_result LIMIT 1,4;

在这里插入图片描述

你可能感兴趣的:(MySQL)