MySQL - ABS() 函数



MySQL 提供了一套函数来对数值数据执行各种数学运算。

MySQL 的ABS()函数用于查找数字的绝对值。绝对值通常定义为数轴上特定点到零的距离,与方向无关。由于绝对值不考虑方向,因此它永远不会为负。

此函数接受整数值作为参数,并返回给定整数的绝对值。返回的绝对值显示为结果集。

语法

以下是 MySQL ABS() 函数的语法:

ABS(x)

参数

此函数以数值作为参数。

返回值

此函数返回给定数值的绝对值(非负值)。

示例

以下是 MySQL ABS() 函数的示例:

SELECT ABS(225) As Result;

输出

这将产生以下结果:

结果
225

示例

如果将负整数传递给此函数,则结果值将是相同的整数,但不带负号。

SELECT ABS(-55787) As Result;

输出

上面的查询将产生以下结果:

结果
55787

示例

如果传递的值为 NULL,或者发生错误,则此函数返回 NULL。

SELECT ABS(NULL) As Result;

输出

这将产生以下结果:

结果
NULL

示例

您还可以按如下方式以字符串的形式将值传递给此函数:

SELECT ABS('-225') As Result;

输出

上面的查询将产生以下结果:

结果
225

示例

如果传递的值不为 null 且不是整数值,则此函数返回 0:

SELECT ABS('test') As Result;

输出

这将产生以下结果:

结果
0

示例

在下面的查询中,我们使用 CREATE 语句创建一个名为CUSTOMERS的 MySQL 表,如下所示:

CREATE TABLE CUSTOMERS (
   ID INT AUTO_INCREMENT,
   NAME VARCHAR(20) NOT NULL,
   AGE INT NOT NULL,
   ADDRESS CHAR (25),
   SALARY DECIMAL (18, 2),
   PRIMARY KEY (ID)
);

下面的查询将 7 条记录插入到上面创建的表中:

INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES 
(1, 'Ramesh', 32, 'Ahmedabad', 2000.00 ),
(2, 'Khilan', 25, 'Delhi', 1500.00 ),
(3, 'Kaushik', 23, 'Kota', 2000.00 ),
(4, 'Chaitali', 25, 'Mumbai', 6500.00 ),
(5, 'Hardik', 27, 'Bhopal', 8500.00 ),
(6, 'Komal', 22, 'Hyderabad', 4500.00 ),
(7, 'Muffy', 24, 'Indore', 10000.00 );

执行以下 SELECT 语句以检索 CUSTOMERS 表中存在的所有记录:

Select * From CUSTOMERS;

以下是 CUSTOMERS 表:

ID 姓名 (NAME) 年龄 (AGE) 地址 (ADDRESS) 薪水 (SALARY)
1 Ramesh 32 Ahmedabad 2000.00
2 Khilan 25 Delhi 1500.00
3 Kaushik 23 Kota 2000.00
4 Chaitali 25 Mumbai 6500.00
5 Hardik 27 Bhopal 8500.00
6 Komal 22 Hyderabad 4500.00
7 Muffy 24 Indore 10000.00

在这里,我们在 CUSTOMERS 表上使用 MySQL ABS() 函数来查找 SALARY 列的绝对值:

SELECT NAME, ABS(SALARY) AS ABSOLUTE_SALARY
FROM CUSTOMERS;

输出

以下是 CUSTOMERS 表中 SALARY 列的绝对值:

姓名 (NAME) 绝对薪水 (ABSOLUTE_SALARY)
Ramesh 2000.00
Khilan 1500.00
Kaushik 2000.00
Chaitali 6500.00
Hardik 8500.00
Komal 4500.00
Muffy 10000.00
广告