MySQL - ROUND() 函数



MySQL 的 ROUND() 函数接受 (浮点数) 作为参数并返回其四舍五入的值。我们还可以传递一个整数,指定结果值中可以包含的小数位数。

在数学上,“四舍五入”一词描述了将十进制值转换为最接近的整数的过程。在算术表达式返回十进制值结果的情况下,将结果四舍五入到整数将使计算更容易理解。

一个值可以四舍五入到最高整数或最低整数。如果给定的十进制值大于 0.5,则将其四舍五入到其最高整数;否则将其四舍五入到其最低整数。

语法

以下是 MySQL ROUND() 函数的语法 -

ROUND(X, D);

参数

此函数接受两个参数:要四舍五入的数字表达式,以及一个可选的第二个参数,指定小数位数。

返回值

此函数将四舍五入后的值作为数值或十进制值返回。

示例

在下面的查询中,我们使用 ROUND() 函数将数字 5.6523 四舍五入到最接近的整数 -

SELECT ROUND(5.6523) As Result;

输出

上面查询的输出如下所示 -

结果
6

示例

我们还可以将此函数的参数作为字符串值传递 -

SELECT ROUND('25748.67') As Result;

输出

这将产生以下结果 -

结果
25749

示例

我们可以将负值作为参数传递给此方法 -

SELECT ROUND(-5578.5778) As Result;

输出

输出如下所示 -

结果
-5579

示例

此函数还接受一个整数,表示您可以在小数点后保留的位数 -

SELECT ROUND(545895.6877562, 3) As Result;

输出

输出如下所示 -

结果
545895.688

示例

在下面的示例中,我们使用 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.56 ),
(2, 'Khilan', 25, 'Delhi', 1500.33 ),
(3, 'Kaushik', 23, 'Kota', 2000.66 ),
(4, 'Chaitali', 25, 'Mumbai', 6500.95 ),
(5, 'Hardik', 27, 'Bhopal', 8500.99 ),
(6, 'Komal', 22, 'Hyderabad', 4500.11 ),
(7, 'Muffy', 24, 'Indore', 10000.50 );

执行以下查询以获取 CUSTOMERS 表中所有插入的记录 -

Select * From CUSTOMERS;

以下是 CUSTOMERS 表 -

ID 姓名 年龄 地址 工资
1 Ramesh 32 Ahmedabad 2000.56
2 Khilan 25 Delhi 1500.33
3 Kaushik 23 Kota 2000.66
4 Chaitali 25 Mumbai 6500.95
5 Hardik 27 Bhopal 8500.99
6 Komal 22 Hyderabad 4500.11
7 Muffy 24 Indore 10000.50

现在,我们使用 MySQL ROUND() 函数来

SELECT *, ROUND(SALARY) FROM CUSTOMERS;

以下是 CUSTOMERS 表 -

ID 姓名 年龄 地址 工资 ROUND(SALARY)
1 Ramesh 32 Ahmedabad 2000.56 2001
2 Khilan 25 Delhi 1500.33 1500
3 Kaushik 23 Kota 2000.66 2001
4 Chaitali 25 Mumbai 6500.95 6501
5 Hardik 27 Bhopal 8500.99 8501
6 Komal 22 Hyderabad 4500.11 4500
7 Muffy 24 Indore 10000.50 10001
广告