摘要:在本教程中,您將學習如何使用 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函式將數字四捨五入到指定的精度。
本教程是否有幫助?