摘要:在本教程中,您将学习如何使用 SQL ROUND 函数将数字四舍五入到指定的精度。
SQL ROUND 函数简介 #
ROUND 函数是一个数学函数,可将数字四舍五入到特定的长度或精度。
以下是 ROUND 函数的语法
ROUND(numeric_expression, precision);Code language: SQL (Structured Query Language) (sql)ROUND 函数接受两个参数。
numeric_expression是一个计算结果为数字的数值表达式。precision可以是整数(0、负数和正数)。
基本的 SQL ROUND 函数示例 #
以下语句使用 ROUND 函数将 100.19 四舍五入到一位小数。
SELECT ROUND(100.19,1);Code language: SQL (Structured Query Language) (sql) round
-------
100.2
(1 row)Code language: SQL (Structured Query Language) (sql)由于精度为 1,ROUND 函数将数字向上舍入到最接近的小数位。
以下示例使用 ROUND 函数将 100.14 四舍五入到一位小数。
SELECT
ROUND(100.14, 1);Code language: SQL (Structured Query Language) (sql) round
-------
100.1
(1 row)Code language: SQL (Structured Query Language) (sql)如果精度是负整数,ROUND 函数将对小数点左侧的数字进行四舍五入,例如:
SELECT ROUND(109.14,-1);Code language: SQL (Structured Query Language) (sql) round
-------
110
(1 row)Code language: SQL (Structured Query Language) (sql)在此示例中,ROUND 函数对小数点左侧数字的最后一位进行向上舍入。此外,小数点右侧的数字变为零。
某些数据库系统,如 Microsoft SQL Server、IBM DB2、Sybase ASE,会在数字的小数点后显示零 (.00),而其他数据库系统(如 Oracle、PostgreSQL、MySQL)则不会。
请注意,Oracle、PostgreSQL 和 MySQL 有一个接受单个参数的 ROUND 函数版本。
如果传递单个参数,ROUND 函数会将数字向上舍入到最接近的整数。例如,以下语句返回 110,这是最接近的整数。
SELECT
ROUND(109.59);Code language: SQL (Structured Query Language) (sql) round
-------
110
(1 row)Code language: SQL (Structured Query Language) (sql)在表数据中使用 SQL ROUND 函数 #
请参阅示例数据库中的以下 employees 和 departments 表。

以下语句使用 ROUND 函数将每个部门员工的平均工资四舍五入到最接近的整数。
SELECT
department_name,
ROUND(AVG(salary), 0) average_salary
FROM
employees e
INNER JOIN departments d ON d.department_id = e.department_id
GROUP BY
department_name
ORDER BY
department_name;Code language: SQL (Structured Query Language) (sql)输出
department_name | average_salary
------------------+----------------
Accounting | 10150
Administration | 4400
Executive | 19333
Finance | 8600
Human Resources | 6500
IT | 5760
Marketing | 9500
Public Relations | 10000
Purchasing | 4150
Sales | 9617
Shipping | 5886Code language: PHP (php)摘要 #
- 使用
ROUND函数将数字四舍五入到指定的精度。
本教程是否有帮助?