MySQL - ROUND() 函数
MySQL ROUND() 函数接受(浮点)数作为参数,并返回其四舍五入后的值。我们也可以传递一个整数,指定结果值的小数位数。
从数学上讲,"四舍五入"是指将小数值转换为最接近的整数的过程。在算术表达式返回小数结果的情况下,将结果四舍五入为整数可以使计算更容易理解。
一个值可以四舍五入为最大整数或最小整数。如果给定的小数值大于 0.5,则四舍五入为最大整数;否则,它将被四舍五入为最小整数。
语法
以下是 MySQL ROUND() 函数的语法 -
ROUND(X, D);
参数
此函数接受两个参数:需要四舍五入的数值表达式,以及一个可选的第二个参数,用于指定小数位数。
返回值
此函数以数值或小数形式返回四舍五入的值。
示例
在下面的查询中,我们使用 ROUND() 函数将数字 5.6523 四舍五入为最接近的整数 -
SELECT ROUND(5.6523) As Result;
输出
上述查询的输出如下所示 -
Result |
---|
6 |
示例
我们也可以将此函数的参数作为字符串值传递 -
SELECT ROUND('25748.67') As Result;
输出
这将产生以下结果 -
Result |
---|
25749 |
示例
我们可以将负值作为参数传递给此方法 -
SELECT ROUND(-5578.5778) As Result;
输出
输出结果如下 -
Result |
---|
-5579 |
示例
此函数也接受一个整数值,表示小数点后可以保留的位数 -
SELECT ROUND(545895.6877562, 3) As Result;
输出
输出结果如下 -
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 | NAME | AGE | ADDRESS | SALARY |
---|---|---|---|---|
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 | NAME | AGE | ADDRESS | SALARY | 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 |