Слава - Стань сильней
Разбираем агрегатные функции. Знакомимся с GROUP BY и HAVING
Запросы могут производить обобщенное групповое значение полей точно также как и значение одного поля. Это делает с помощью агрегатных функций. Агрегатные функции производят одиночное значение для всей группы таблицы. Имеется список этих функций: Давайте разберем как использовать агрегатные функции. Агрегатные функции используются подобно именам полей в предложении SELECT запроса, но с одним исключением, они берут имена поля как аргументы. Только числовые поля могут использоваться с SUM и AVG. С COUNT, MAX, и MIN, могут использоваться и числовые или символьные поля...
SQL, еще раз про оконные функции
Элементарный пример... Многие из нас используют group by. До знакомства с оконными функциями, стыдно признаться, что моим лучшим решением было выполнить самосоединение для извлечения исходного значения. Я и не подозревал, что этот метод очень неэффективен и неэффектен. Однако, выполнив group by, мы получим только одно значение в ответ. Во многих случаях мы хотели видеть исходное значение рядом с агрегированным значением, чтобы провести некоторое сравнение. Какова наилучшая практика для достижения этого? Гораздо лучший способ решить эту проблему - использовать оконную функцию...