MySQL - FORMAT() 函式



MySQL 的FORMAT()函式用於將數值格式化為指定的小數位數,並用逗號作為千位分隔符。它還會根據指定的小數位數對給定數字進行四捨五入。

此函式除了修改數字以簡化數學計算外,沒有任何其他作用。它只能用於資料庫的數值資料。

語法

以下是 MySQL Format() 函式的語法:

FORMAT(X,D);

引數

此函式接受兩個值作為引數:

  • X - 一個數字(浮點數)。

  • D - 應保留的小數位數。

返回值

此函式返回格式化後的數字,以字串形式顯示,包含千位分隔符逗號和指定的小數位數。

示例

在下面的查詢中,我們使用 MySQL FORMAT() 函式將給定數字格式化為三位小數:

SELECT FORMAT(85878.687555758, 3) As Result;

輸出

上述查詢的輸出如下所示:

結果
85,878.688

示例

下面的查詢將給定數字格式化為兩位小數,並返回結果:

SELECT FORMAT(424812, 2) As Result;

輸出

這將產生以下結果:

結果
424,812.00

示例

我們也可以以字串的形式將值傳遞給此函式:

SELECT FORMAT('454877.3387557', '3') As Result;

輸出

輸出如下所示:

結果
454,877.339

示例

如果我們將 0 作為此函式的第二個引數,它將省略所有小數位,並返回結果:

SELECT FORMAT(54889578795.65785478, 0) As Result;

輸出

這將產生以下結果:

結果
54,889,578,796

示例

您還可以使用 FORMAT() 函式對錶中列的值進行四捨五入。為此,讓我們首先使用以下查詢建立一個名為 CUSTOMERS 的表:

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 * 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

以下查詢將 SALARY 列格式化為沒有小數位:

SELECT ID, NAME, ADDRESS, FORMAT(SALARY, 0) FROM CUSTOMERS;

上述查詢的輸出如下所示:

ID 姓名 (NAME) 地址 (ADDRESS) 薪水 (SALARY)
1 Ramesh Ahmedabad 2,000
2 Khilan Delhi 1,500
3 Kaushik Kota 2,000
4 Chaitali Mumbai 6,500
5 Hardik Bhopal 8,500
6 Komal Hyderabad 4,500
7 Muffy Indore 10,000
廣告