Разработка приложений баз данных в Delphi. Шейкер Т.Д. - 86 стр.

UptoLike

Составители: 

86
Рис. 30. Применение итоговых функций
3.8.3. Выполнение группировки
Предложение GROUP BY предназначено для подведения промежуточных
итогов в запросах. Для каждой отдельной группы создаётся единственная ито-
говая строка. При наличии в команде
SELECT фразы GROUP BY каждый эле-
мент списка в предложении
SELECT должен иметь единственное значение для
всей группы. Предложение
SELECT может включать только следующие типы
элементов: имена полей, итоговые функции, константы и выражения, вклю-
чающие комбинации перечисленных выше элементов.
Все имена полей, приведённые в списке предложения
SELECT, должны
присутствовать и в фразе
GROUP BY, за исключением случаев, когда имя столб-
ца используется в итоговой функции. При этом в предложении
GROUP BY могут
быть поля, отсутствующие в списке предложения
SELECT.
Пример 3.26. Вывести сведения о категории, количестве записей, макси-
мальной, минимальной и средней длины рыбы в каждой категории:
SELECT Category, count(*)AS Number,
max(Length_In) AS Max_Length,min(Length_In) AS min_Length,
avg(Length_In) AS avg_Length
FROM biolife GROUP BY Category
Если совместно с GROUP BY используется предложение WHERE, то оно об-
рабатывается первым, а группировка применяется только к тем строкам, кото-
рые удовлетворяют условию поиска.
                    Рис. 30. Применение итоговых функций


     3.8.3. Выполнение группировки
     Предложение GROUP BY предназначено для подведения промежуточных
итогов в запросах. Для каждой отдельной группы создаётся единственная ито-
говая строка. При наличии в команде SELECT фразы GROUP BY каждый эле-
мент списка в предложении SELECT должен иметь единственное значение для
всей группы. Предложение SELECT может включать только следующие типы
элементов: имена полей, итоговые функции, константы и выражения, вклю-
чающие комбинации перечисленных выше элементов.
     Все имена полей, приведённые в списке предложения SELECT, должны
присутствовать и в фразе GROUP BY, за исключением случаев, когда имя столб-
ца используется в итоговой функции. При этом в предложении GROUP BY могут
быть поля, отсутствующие в списке предложения SELECT.
     Пример 3.26. Вывести сведения о категории, количестве записей, макси-
мальной, минимальной и средней длины рыбы в каждой категории:
SELECT Category, count(*)AS Number,
  max(Length_In) AS Max_Length,min(Length_In) AS min_Length,
  avg(Length_In) AS avg_Length
FROM biolife GROUP BY Category
    Если совместно с GROUP BY используется предложение WHERE, то оно об-
рабатывается первым, а группировка применяется только к тем строкам, кото-
рые удовлетворяют условию поиска.


                                     86