Практическое руководство. Суммирование или статистическая обработка всех строк таблицы
агрегатные функции позволяют вычислять сводные результаты по всем значениям, содержащимся в таблице.Например, можно создать запрос наподобие того, что приведен ниже, для отображения общей стоимости всех книг, содержащихся в таблице titles:
SELECT SUM(price)
FROM titles
Один запрос может вычислять сразу несколько статистических выражений, используя агрегатные функции для нескольких столбцов.Например, можно создать запрос, вычисляющий общую сумму по столбцу price и среднеарифметическое значение столбца discount.
В одном запросе можно также для одного и того же столбца определять несколько статистических операций (подведение общей суммы, подсчет, усреднение).Например, следующий запрос определяет среднеарифметическое значение и общую сумму столбца price в таблице titles:
SELECT AVG(price), SUM(price)
FROM titles
Если добавить условие поиска, можно вычислять статистические значения на основе подмножества строк, удовлетворяющих заданному условию.
Примечание |
---|
Можно также подсчитать, сколько всего в таблице содержится строк, или строк, удовлетворяющих определенному условию.Дополнительные сведения см. в разделе Практическое руководство. Подсчет строк в таблице. |
Если в запросе указано статистическое выражение, то для всех строк в таблице отображается только само это статистическое значение.Например, при подсчете итогового значения столбца price в таблице titles названия, имена издателей и другие столбцы не отображаются.
Примечание |
---|
При вычислении промежуточных итогов (т. е. при создании групп) можно выводить значения столбцов для каждой группы.Дополнительные сведения см. в разделе Практическое руководство. Группировка строк в результатах запроса. |
Примечание |
---|
На вашем компьютере названия некоторых элементов интерфейса пользователя Visual Studio или их расположение могут отличаться от указанных в нижеследующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Параметры Visual Studio. |
Статистическое вычисление по всем строкам
Убедитесь, что таблица, в которой необходимо вычислить статистическую величину, присутствует в области схемы.
Щелкните правой кнопкой мыши фон области схемы, а затем в контекстном меню выберите пункт Группировка.Конструктор запросов и представлений добавит столбец Группировка в сетку области условий.
Добавьте в область условий столбец, по которому необходимо вычислить статистическую величину.Убедитесь, что столбец помечен для вывода.
Конструктор запросов и представлений автоматически назначает суммируемому столбцу псевдоним.который можно заменить более понятным.Дополнительные сведения см. в разделе Практическое руководство. Создание псевдонимов столбцов.
В столбце сетки Группировка выберите нужную агрегатную функцию, например Sum, Avg, Min, Max, Count.Если необходимо вычислить статистические значения только для уникальных строк результирующего набора, выберите агрегатную функцию с параметром DISTINCT, например Min Distinct.Не выбирайте параметры Группировка, Выражение или Где, так как они не применяются при статистической обработке всех строк.
Примечание Oracle поддерживает дополнительные агрегатные функции.
Конструктор запросов и представлений заменяет указанной агрегатной функцией имя столбца в инструкции, представленной в области SQL.Например, инструкция SQL может иметь такой вид:
SELECT SUM(price) FROM titles
Если необходимо создать в запросе несколько статистических выражений, повторите шаги 3 и 4.
Если в список вывода запроса или в список сортировки добавляется другой столбец, конструктор запросов и представлений автоматически вводит условие Группировка в столбец сетки Группировка.Выберите соответствующую агрегатную функцию.
Если необходимо, добавьте условия поиска для задания подмножества строк, для которых вычисляется суммарное значение.
При выполнении запроса в области результатов отображаются указанные статистические выражения.
Примечание |
---|
Конструктор запросов и представлений обслуживает агрегатные функции в инструкции, отображаемой в области SQL, до тех пор, пока режим группировки явно не будет выключен.Поэтому при изменении типа запроса или изменении состава таблиц или возвращающих табличное значение объектов, присутствующих в области схемы, конечный запрос может содержать недопустимые агрегатные функции. |