Системы обработки информации - язык баз данных SQL

       

<Раздел group by> (<group by clause>)


Функция

Специфицирует сгруппированную таблицу, порождаемую применением <раздела group by> (<group by clause>) к результату предыдущего раздела.

Формат

<group by clause> ::=

GROUP BY <column specification>

[{ ,<column specification> }...]

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

  • Пусть T обозначает описание результата предшествующего <раздела from> (<from clause>) или <раздела where> (<where clause>).
  • Каждая <спецификация столбца> (<column specification>) в <разделе group by> (<group by clause>) должна недвусмысленно ссылаться на столбец T. Столбец, указываемый в <разделе group by> (<group by clause>), есть столбец группирования.
  • Общие правила

  • Пусть R обозначает результат предыдущего <раздела from> (<from clause>) или <раздела where> (<where clause>).
  • Результатом <раздела group by> (<group by clause>) является разбиение R на множество групп. Это множество состоит из минимального числа групп таких, что для каждого столбца группирования каждой группы, включающей более одной строки, все значения этого столбца группирования равны.
  • Каждая строка данной группы содержит одно и то же значение данного столбца группирования. Когда <условие поиска> (<search condition>) применяется к группе, ссылка на столбец группирования является ссылкой на это значение.


  • Содержание раздела