Access как посчитать среднее значение

Использование: Access 2003

У меня есть таблица с по крайней мере 250 вводами данных. Моя цель — найти среднее значение для некоторых столбцов (например, среднее значение столбца TotalNumSuverys). Простое математическое уравнение, такое как SUM/(количество суперпользователей), не работает, потому что в зависимости от конкретного столбца общее количество записей различается.

Как я могу получить среднее значение столбца?

(Я попробовал агрегат "Avg" в представлении запроса и обнаружил, что он усредняет строку, а не столбец).

Есть ли какой-нибудь SQL, который позволит сделать что-то вроде цикла ForEach?

—I "Очень новый в этом, извините!

Функция Avg() дает среднее (среднее арифметическое) только значения, отличные от Null в столбце. Или, в вашем примере, значение "Null" будет исключено как из "SUM", так и "Number of theveryvery takers".

Дизайнер запросов Access может сначала сбивать с толку (насколько я помню). Может быть, это будет иметь для вас больше смысла, если вы переключитесь на SQL View и введите пример с использованием этого шаблона.

. заменяя имя вашего столбца для MyColumn и имя вашей таблицы для MyTable. Затем запустите запрос (Datasheet View), чтобы узнать, что он вам дает. Затем вы можете вернуться к Design View, чтобы увидеть, как он представлен там.

Другие агрегированные функции, а не только Avg() , также игнорируют значения Null. Например, Count(MyColumn) даст вам количество строк, где MyColumn не является Null. [Если вы хотите подсчет всех строк независимо от того, содержат ли какие-либо отдельные столбцы Null, используйте Count(*) ], а Sum(MyColumn) добавит только значения, отличные от Null MyColumn.

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

Статистические функции, которые можно использовать в запросах Access, входят в состав Access SQL. Описание этих функций, а также типов полей, к которым они могут быть применены, приведено в табл. 8.1.

Функция Типы полей Описание
Avg() Все типы полей, исключая Текстовый (Text), Поле Memo (Memo) и Поле объекта OLE (OLE Object). Вычисляет арифметическое среднее набора чисел, содержащихся в указанном поле запроса
Count ( ) Все типы полей Вычисляет количество непустых записей, возвращаемых запросом
First ( ) Все типы полей Возвращает значение поля из первой записи результирующего набора
Last () Все типы полей Возвращает значение поля из последней записи результирующего набора
Max() Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE Возвращает максимальное значение из набора, содержащегося в указанном поле
Min() Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE Возвращает минимальное значение из набора, содержащегося в указанном поле
StDev() StDevP() Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE Возвращают смещенное и несмещенное значение среднеквадратичного отклонения, вычисляемого по набору значений, содержащихся в указанном поле
Sum( ) Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE Возвращает сумму набора значений, содержащихся в заданном поле
Var() VarP ( ) Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE Возвращают значение смещенной и не смещенной дисперсии, вычисляемой по набору значений, содержащихся в указанном поле

Перечисленных функций обычно достаточно для решения большинства задач. Тем не менее, при необходимости пользователь может самостоятельно написать функцию на языке VBA, которая будет выполнять сложные статистические, научные или инженерные расчеты над данными, и использовать эту функцию в запросах.

Все статистические функции Access SQL поддерживаются стандартом ANSI SQL, но не все из них поддерживаются другими СУБД. Например, не все серверные базы данных поддерживают функции StDev(), StDevP(), Var () и VarP (). Поэтому, если вы планируете в дальнейшем перенести свою базу данных на сервер, прежде чем использовать эти функции, нужно убедиться, поддерживаются ли они сервером. Иначе потом придется изменять все объекты, в которых встречаются эти функции.

Использование статистических функций для расчета итоговых значений тесно связано с применением групповых операций в запросе. Групповые операции позволяют задать группы, для которых выполняются вычисления. Ниже мы приведем примеры таких расчетов как на всем множестве записей, так и на подмножествах, выбранных по условиям запроса.

1920 просмотра

1 ответ

3 Репутация автора

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

Ответы (1)

0 плюса

1171 Репутация автора

Если значение чистого дохода доступно в вашем базовом наборе данных, и вы используете группировку для получения строки Housing Community, вы можете использовать =AVG([NetIncome]) источник контроля в текстовом поле среднего чистого дохода.

Если информация о чистом доходе недоступна в наборе данных отчета, и вы не хотите добавлять ее, вы можете использовать функцию DAvg в источнике управления текстового поля среднего чистого дохода:

Более эффективно будет получать данные о чистой прибыли в набор данных отчета. Функция DAvg будет работать плохо, так как объем сообщаемых данных увеличивается.


[an error occurred while processing the directive]
Карта сайта