Поделиться через


Практическое руководство. Суммирование или статистическая обработка всех строк таблицы

агрегатные функции позволяют вычислять сводные результаты по всем значениям, содержащимся в таблице. Например, можно создать запрос наподобие того, что приведен ниже, для отображения общей стоимости всех книг, содержащихся в таблице 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.

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

  1. Убедитесь, что таблица, в которой необходимо вычислить статистическую величину, присутствует в области схемы.

  2. Щелкните правой кнопкой мыши фон области схемы, а затем в контекстном меню выберите пункт Группировка. Конструктор запросов и представлений добавит столбец Группировка в сетку области условий.

  3. Добавьте в область условий столбец, по которому необходимо вычислить статистическую величину. Убедитесь, что столбец помечен для вывода.

    Конструктор запросов и представлений автоматически назначает суммируемому столбцу псевдоним. который можно заменить более понятным. Дополнительные сведения см. в разделе Практическое руководство. Создание псевдонимов столбцов.

  4. В столбце сетки Группировка выберите нужную агрегатную функцию, например Sum, Avg, Min, Max, Count. Если необходимо вычислить статистические значения только для уникальных строк результирующего набора, выберите агрегатную функцию с параметром DISTINCT, например Min Distinct. Не выбирайте параметры Группировка, Выражение или Где, так как они не применяются при статистической обработке всех строк.

    Примечание

    Oracle поддерживает дополнительные агрегатные функции.

    Конструктор запросов и представлений заменяет указанной агрегатной функцией имя столбца в инструкции, представленной в области SQL. Например, инструкция SQL может иметь такой вид:

    SELECT SUM(price)
    FROM titles
    
  5. Если необходимо создать в запросе несколько статистических выражений, повторите шаги 3 и 4.

    Если в список вывода запроса или в список сортировки добавляется другой столбец, конструктор запросов и представлений автоматически вводит условие Группировка в столбец сетки Группировка. Выберите соответствующую агрегатную функцию.

  6. Если необходимо, добавьте условия поиска для задания подмножества строк, для которых вычисляется суммарное значение.

При выполнении запроса в области результатов отображаются указанные статистические выражения.

Примечание

Конструктор запросов и представлений обслуживает агрегатные функции в инструкции, отображаемой в области SQL, до тех пор, пока режим группировки явно не будет выключен.Поэтому при изменении типа запроса или изменении состава таблиц или возвращающих табличное значение объектов, присутствующих в области схемы, конечный запрос может содержать недопустимые агрегатные функции.

См. также

Другие ресурсы

Сортировка и группировка результатов запроса

Сводка по результатам запроса