SQL| дозволяє групувати результати запиту на підставі двох або більш за стовпці. Наприклад, отримати|одержувати| список прізвищ студентів і їх середніх оцінок за кожен семестр.
SELECT| StName|, Semester|, AVG|(Mark|)
FROM| Marks| INNER| JOIN| Students| USING|(StNo|)
GROUP| BY| StName|, Semester|
1.1.2 Обмеження на запити з|із| угрупуванням
На запити, в яких використовується угрупування, накладаються додаткові обмеження. Стовпці з|із| угрупуванням мають бути реальними стовпцями таблиць, перерахованих в пропозиції|реченні| FROM|. Не можна групувати рядки на підставі значення обчислюваного|вичисляти| вираження|виразу|.
Крім того, існують обмеження на елементи списку повертаних стовпців. Всі елементи цього списку повинні мати одне значення для кожної групи рядків. Це означає, що повертаним стовпцем може бути:
1. константа;
2. агрегатна функція, що повертає одне значення для всіх рядків, що входять до групи;
3. стовпець угрупування, який, за визначенням, має одне і те ж значення у всіх рядках групи;
4. вираження|вираз|, що включає перераховані вище елементи.
На практиці в список повертаних стовпців запиту з|із| групуванням завжди входять стовпець угрупування і агрегатна функція. Якщо остання не вказана, значить, запит можна простіше виразити|виказувати| за допомогою ключового|джерельного| слова DISTINCT| без використання пропозиції|речення| GROUP| BY|. І навпаки, якщо не включити в результати запиту стовпець угрупування, ви не зможете визначити, до якої групи відноситься кожен рядок результатів.
1.1.3 Значення NULL| в стовпцях угрупування
У стандарті ANSI| визначене, що два значення NULL| в пропозиції|реченні| GROUP| BY| рівні.
Рядки, що мають значення NULL| в однакових стовпцях угрупування і ідентичні значення у всіх останніх стовпцях угрупування, поміщаються в одну групу.
1.1.4 Умови пошуку груп (пропозиція|речення| HAVING|)
Точно так, як і пропозиція|речення| WHERE| використовується для відбору окремих рядків, що беруть участь в запиті, пропозицію|речення| HAVING| можна застосувати для відбору груп рядків. Його формат відповідає формату пропозиції|речення| WHERE|. Пропозиція|речення| HAVING| складається з ключового|джерельного| слова HAVING|, за яким слідує|прямує| умова пошуку. Таким чином, дану пропозицію|речення| визначає умова пошуку для груп.