Applies ToAccess для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Функции DStDev и DStDevP можно использовать для оценки стандартного отклонения в наборе значений в указанном наборе записей ( подмножество ). Используйте функции DStDev и DStDevP в модуле Visual Basic для приложений (VBA), макрос, выражении запроса или вычисляемый элемент управления в форме или отчете.

Функция StDevP оценивает генеральную совокупность, а StDev — выборку из генеральной совокупности.

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

Синтаксис

DStDev ( выражение , подмножество [, условия] )

DStDevP ( выражение , подмножество [, условия] )

Функции DStDev и DStDevP принимают следующие аргументы:

Аргумент

Описание

выражение

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

подмножество

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

условия

Необязательный. Строковое выражение, используемое для ограничения диапазона данных, на котором выполняется функция DStDev или DStDevP . Например, критерии часто эквивалентны предложению WHERE в выражении SQL без слова WHERE. Если условие опущено, функции DStDev и DStDevP оценивают expr для всего домена. Любое поле, включенное в условия, также должно быть полем в домене; В противном случае функции DStDev и DStDevP возвращают значение NULL.

Замечания

Если в подмножество входит менее двух записей или если менее двух записей удовлетворяют условиям, функции DStDev и DStDevP возвращают значение NULL. Это означает, что расчет стандартного отклонения невозможен.

Где бы ни использовалась функция DStDev или DStDevP — в макросе, модуле, выражении запроса или вычисляемом элементе управления, — необходимо точно задать условия, чтобы обеспечить ее правильное вычисление.

Функцию DStDev или DStDevP можно использовать для задания условий в строке "Условия" запроса на выборку. Например, можно создать запрос для таблиц Orders ("Заказы") и Products ("Товары"), чтобы вывести все товары, для которых цена доставки поднялась выше суммы средней цены и стандартного отклонения. Строка условий, находящаяся ниже поля Freight ("Доставка"), будет содержать следующее выражение:

>(DStDev("[Freight]", "Orders") + DAvg("[Freight]", "Orders"))

Функции DStDev и DStDevP можно использовать в выражении вычисляемого поля запроса или в строке Обновить до запрос на обновление.

Примечание: Функции DStDev и DStDevP или StDevP можно использовать в вычисляемом выражении поля итоговый запрос. При использовании функции DStDev или DStDevP значения вычисляются перед группировкой данных. При использовании функции StDev или StDevP данные группируются перед вычислением значений в выражении поля.

Функцию DStDev или DStDevP можно использовать в вычисляемом элементе управления, если требуется указать условия для ограничения диапазона данных, к которым она применяется. Например, чтобы вывести стандартное отклонение для заказов, отправляемых в Калифорнию, задайте для свойства поля Данные следующее выражение:

=DStDev("[Freight]", "Orders", "[ShipRegion] = 'CA'")

Если требуется просто оценить стандартное отклонение всех записей подмножества, воспользуйтесь функцией StDev или StDevP.

Совет    Если тип данных поля, на котором основано выражение, является числом, функции DStDev и DStDevP возвращают тип данных Double. Если функция DStDev или DStDevP используется в вычисляемом элементе управления, для повышения производительности включите в выражение функцию преобразования типа данных.

Примечание: Несохраненные изменения записей в подмножестве не учитываются при использовании этих функций. Если вы хотите, чтобы функция DStDev или DStDevP учитывала измененные значения, необходимо сначала сохранить изменения, нажав кнопку Сохранить запись в разделе Записи на вкладке Данные, переместив фокус на другую запись или используя метод Update.

Примеры запросов

Expression

Результаты

SELECT DStDev("unitprice", "productSales", "unitprice>140") AS Expr1, DStDevP("unitprice","productSales","unitprice<140") AS Expr2 FROM productSales GROUP BY DStDev("unitprice","productSales","unitprice>140"), DStDevP("unitprice","productSales","unitprice<140");

Вычисляет стандартное отклонение "UnitPrice" (учитывая данные te в качестве примера) из таблицы "ProductSales", где значение "unitprice" больше 140, и отображает результат в expr1. Также вычисляет стандартное отклонение "UnitPrice" (учитывая данные как всю совокупность), где значение "unitprice" меньше 140, и отображает результаты в expr2.

SELECT DStDev("unitprice", "productSales", "unitprice>140") AS DstDev, DStDevP("unitprice","productSales","unitprice<140") AS DstDevP FROM productSales GROUP BY DStDev("unitprice"; ,"productSales","unitprice>140"), DStDevP("unitprice","productSales","unitprice<140");

Вычисляет стандартное отклонение "UnitPrice" (с учетом данных te в качестве примера) из таблицы "ProductSales", где значение "unitprice" больше 140, и отображает результат в DstDev. Также вычисляет стандартное отклонение "UnitPrice" (учитывая данные как всю совокупность), где значение "unitprice" меньше 140, и отображает результаты в DstDevP.

Пример VBA

Примечание: В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.

В следующем примере возвращаются оценки стандартного отклонения для генеральной совокупности и выборки для заказов, отправленных в Великобританию. Подмножеством является таблица "Заказы" (Orders). Аргумент условия ограничивает результирующий набор теми записями, в которых в качестве региона доставки указано Соединенное Королевство (UK).

Dim dblX As DoubleDim dblY As Double' Sample estimate.dblX = DStDev("[Freight]", "Orders", _    "[ShipCountryRegion] = 'UK'")' Population estimate.dblY = DStDevP("[Freight]", "Orders", _    "[ShipCountryRegion] = 'UK'")

В следующем примере вычисляются те же оценки с использованием переменной strCountryRegion в качестве аргумента условия. Обратите внимание на то, что в строковое выражение включены одинарные кавычки ('), поэтому после объединения строк строковый литерал UK будет заключен в одинарные кавычки.

Dim strCountryRegion As StringDim dblX As DoubleDim dblY As DoublestrCountryRegion = "UK"dblX = DStDev("[Freight]", "Orders", _    "[ShipCountryRegion] = '" & strCountryRegion & "'")dblY = DStDevP("[Freight]", "Orders", _    "[ShipCountryRegion] = '" & strCountryRegion & "'")

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

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