Функция ROUND используется для округления дробей до нужного знака в дробной части.
См. также функцию truncate, которая усекает числа до нужного знака.
См. также функцию CEILING, которая округляет дроби в большую сторону.
См. также функцию FLOOR, которая округляет дроби в меньшую сторону.
Синтаксис
Округление до целого:
SELECT ROUND(поле) FROM имя_таблицы WHERE условие
Округление до определенного знака в дробной части:
SELECT ROUND(поле, сколько_знаков_оставить) FROM имя_таблицы WHERE условие
Примеры
Все примеры будут по этой таблице workers, если не сказано иное:
id айди |
name имя |
age возраст |
salary зарплата |
---|---|---|---|
1 | Дима | 23 | 100.129 |
2 | Петя | 24 | 200.391 |
3 | Вася | 25 | 300.934 |
Пример
В данном примере дробная зарплата округляется до целых при выборке:
SELECT *, ROUND(salary) as salary FROM workers
SQL запрос выберет следующие строки:
id айди |
name имя |
age возраст |
salary зарплата |
---|---|---|---|
1 | Дима | 23 | 100 |
2 | Петя | 24 | 200 |
3 | Вася | 25 | 301 |
Пример
В данном примере дробная зарплата округляется до двух знаков после точки:
SELECT *, ROUND(salary, 2) as salary FROM workers
SQL запрос выберет следующие строки:
id айди |
name имя |
age возраст |
salary зарплата |
---|---|---|---|
1 | Дима | 23 | 100.13 |
2 | Петя | 24 | 200.39 |
3 | Вася | 25 | 300.93 |
Пример
В данном примере дробная зарплата округляется до одного знака после точки:
SELECT *, ROUND(salary, 1) as salary FROM workers
SQL запрос выберет следующие строки:
id айди |
name имя |
age возраст |
salary зарплата |
---|---|---|---|
1 | Дима | 23 | 100.1 |
2 | Петя | 24 | 200.4 |
3 | Вася | 25 | 300.9 |
Пример
В данном примере дробная зарплата округляется до целых (0 соответствует целому числу):
SELECT *, ROUND(salary, 0) as salary FROM workers
SQL запрос выберет следующие строки:
id айди |
name имя |
age возраст |
salary зарплата |
---|---|---|---|
1 | Дима | 23 | 100 |
2 | Петя | 24 | 200 |
3 | Вася | 25 | 301 |