第二十九回:算无遗策

—— Aggregate Functions (聚合函数)
👈 上一回:万物属性 🏠 回到大竹峰 下一回:分门别类 👉

师父让我统计:大竹峰一共有多少人?谁的修为最高?大家的平均修为是多少?我头都大了!

这便是聚合函数的用武之地。它们能将万千数据汇聚成一个结果。

🧮 神算五式

1. COUNT() - 点名术

计算行数。

-- 点名:计算所有弟子(包括没名字的) SELECT COUNT(*) FROM Disciples; -- 查册:计算有法宝的弟子(忽略 NULL) SELECT COUNT(Weapon_ID) FROM Disciples;

2. SUM() - 聚财术

计算数值列的总和(所有人的银两加起来)。

SELECT SUM(Money) FROM Disciples;

3. AVG() - 平均术

计算数值列的平均值(平均修为了)。

SELECT AVG(Level) FROM Disciples;

4. MAX() - 登顶术

找出最大值(谁最强)。

SELECT MAX(Level) FROM Disciples;

5. MIN() - 探底术

找出最小值(谁最弱)。

SELECT MIN(Level) FROM Disciples;

6. 关于 FIRST() 和 LAST()

有些古老的功法(如 MS Access)有 FIRST()LAST(),但在通用的修仙界(MySQL, SQL Server, Oracle),我们通常配合 ORDER BYLIMIT/TOP 来实现。

-- 找出第一个(MySQL) SELECT Name FROM Disciples ORDER BY ID ASC LIMIT 1;
⚠️ 注意: 聚合函数通常忽略 NULL 值(除了 COUNT(*))。