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
廣告