MySQL 绝对值函数

在 MySQL 中,绝对值函数用于返回一个数的绝对值。绝对值是指一个数与 0 的差值的绝对值。MySQL 提供了多个用于计算绝对值的函数,本文将详细介绍这些函数的用法。
ABS() 函数
ABS() 函数是 MySQL 中最常用的绝对值函数。它用于返回一个数的绝对值。
SELECT ABS(-10);
运行以上 SQL 语句,将返回结果 10。这是因为 ABS(-10) 的结果是 10 的绝对值。
FLOOR() 函数
FLOOR() 函数用于返回大于或等于指定数的最大整数。如果指定的数是正数,则返回小于或等于该数的最大整数;如果指定的数是负数,则返回大于该数的最大整数。
SELECT FLOOR(3.14);
运行以上 SQL 语句,将返回结果 3。这是因为 3.14 的最大整数小于等于 3。
SELECT FLOOR(-3.14);
运行以上 SQL 语句,将返回结果 -4。因为 -3.14 的最大整数大于 -4。
CEILING() 函数
CEILING() 函数用于返回小于或等于指定数的最小整数。如果指定的数是正数,则返回大于或等于该数的最小整数;如果指定的数是负数,则返回小于该数的最小整数。
SELECT CEILING(3.14);
运行以上 SQL 语句,将返回结果 4。这是因为 3.14 的最小整数大于等于 4。
SELECT CEILING(-3.14);
运行以上 SQL 语句,将返回结果 -3。因为 -3.14 的最小整数小于 -3。
ROUND() 函数
ROUND() 函数用于返回一个数按指定小数位数进行四舍五入后的结果。指定的小数位数可以为正数或负数。
SELECT ROUND(3.14);
运行以上 SQL 语句,将返回结果 3。这是因为没有指定小数位数时,默认为 0,即对整数进行四舍五入。
SELECT ROUND(3.14159, 2);
运行以上 SQL 语句,将返回结果 3.14。这是因为指定小数位数为 2,对小数点后两位进行四舍五入。
SELECT ROUND(314.159, -2);
运行以上 SQL 语句,将返回结果 300。这是因为指定小数位数为 -2,即对百位进行四舍五入。
TRUNCATE() 函数
TRUNCATE() 函数用于返回一个数按指定小数位数截断后的结果。指定的小数位数可以为正数或负数。
SELECT TRUNCATE(3.14, 0);
运行以上 SQL 语句,将返回结果 3。这是因为指定小数位数为 0,即不保留小数部分。
SELECT TRUNCATE(3.14159, 2);
运行以上 SQL 语句,将返回结果 3.14。这是因为指定小数位数为 2,截断小数点后两位。
SELECT TRUNCATE(314.159, -2);
运行以上 SQL 语句,将返回结果 300。这是因为指定小数位数为 -2,即截断百位后的所有位。
实例演示
下面通过一些实例演示绝对值函数的用法。
CREATE TABLE students (
id INT,
score FLOAT
);
INSERT INTO students (id, score) VALUES (1, 85.5);
INSERT INTO students (id, score) VALUES (2, -90.2);
INSERT INTO students (id, score) VALUES (3, 76.8);
INSERT INTO students (id, score) VALUES (4, 92.6);
INSERT INTO students (id, score) VALUES (5, -64.3);
以上 SQL 语句创建了一个名为 students 的表,并插入了几条学生的成绩记录。
查询学生平均成绩
SELECT AVG(score) FROM students;
运行以上 SQL 语句,将返回所有学生成绩的平均值。例如,结果可能是 80.08。
查询最低成绩
SELECT MIN(score) FROM students;
运行以上 SQL 语句,将返回所有学生成绩中的最低值。例如,结果可能是 -90.2。
查询最高成绩的绝对值
SELECT ABS(MAX(score)) FROM students;
运行以上 SQL 语句,将返回所有学生成绩中最高值的绝对值。例如,结果可能是 92.6。
查询平均成绩的绝对值的整数部分
SELECT FLOOR(ABS(AVG(score))) FROM students;
运行以上 SQL 语句,将返回所有学生成绩平均值的绝对值的整数部分。例如,结果可能是 80。
查询成绩四舍五入后的结果
SELECT ROUND(score) FROM students;
运行以上 SQL 语句,将返回所有学生成绩进行四舍五入后的结果。例如,结果可能是 86、-90、77、93、-64。
小结
绝对值函数在 MySQL 中是常用的数学函数之一。本文介绍了 ABS()、FLOOR()、CEILING()、ROUND() 和 TRUNCATE() 函数的用法,并提供了一些实例演示。这些函数在处理数值计算中非常实用,可以帮助我们快速处理数据,并得到我们所需要的结果。无论是在学术研究、数据分析还是应用开发中,掌握绝对值函数的用法都是非常有帮助的。
极客笔记