Агрегатные функции

Функция

Определяет значение, получаемое применением функции к набору данных.

Спецификация

     
<агрегатная функция>::=
COUNT (*) | функция
<тип функции>::=
{AVG| MEDIAN| MAX| MIN| SUM| COUNT| VARIANCE| STDDEV| DEFAULT| EVERY| ANY| SOME}
<классификатор>::=
DISTINCT | ALL

Синтаксические правила

  1. Агрегатные функции применяются к таблице (представлению) или группе в сгруппированной таблице (представлении).

  2. <Значимое выражение> в <функции> может быть именем столбца или выражением.

  3. <Значимое выражение> в <функции> не должно содержать подзапрос или другую <функцию>.

  4. Если <классификатор> пропущен, по умолчанию принимается ALL.

    create or replace table tab1 (i int, j real);
    insert into tab1 values (1, 1.3);
    insert into tab1 values (3, 2.55);
    insert into tab1 values (5, 5.45);
    insert into tab1 values (3, 2.55);
    insert into tab1 values (NULL, NULL);
    
    Эти запросы эквивалентны:
    select avg(all i), round(avg(all j), 2) from tab1;
    select avg(i), round(avg(j), 2) from tab1;
    
    |3.0         |2.96         |
  5. Операция DISTINCT запрещена для столбца типа BLOB.