Функция SUM возвращает сумму множества числовых значений.
<Значимое выражение>
в аргументе должно быть числовым типом данных или приводиться к нему.
Подсчитанная сумма должна быть в пределах типа возвращаемого значения, иначе фиксируется ошибка переполнения.
При подсчете NULL-значения игнорируются.
Если задана опция DISTINCT
, дубликаты из подсчета исключаются.
Тип данных результата:
DECIMAL
, если тип аргументов INT
, SMALLINT
, BIGINT
, DECIMAL
;
DOUBLE
, если тип аргументов REAL
, DOUBLE
.
select count(*), sum(5) from auto; |1000 |5000.0 |
Если тип данных аргумента DECIMAL
со значениями точности pi и масштабом si, то точность результата есть max(pi) и масштаб max(si).
create table tab1(n decimal); insert into tab1 values (1.5); insert into tab1 values (12345.12345); select * from tab1; | 1.5 | | 12345.12345 | select sum(n) from tab1; |12346.62345 |