Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Применимо к:SQL Server
База данных Azure SQL
Управляемый экземпляр Azure SQL
Azure Synapse Analytics
Система платформы аналитики (PDW)
Конечная точка SQL аналитики в Microsoft Fabric
Хранилище в Microsoft Fabric
База данных SQL в Microsoft Fabric
Возвращает статистическое стандартное отклонение всех значений в указанном выражении.
Соглашения о синтаксисе Transact-SQL
Синтаксис
-- Aggregate Function Syntax
STDEV ( [ ALL | DISTINCT ] expression )
-- Analytic Function Syntax
STDEV ([ ALL ] expression) OVER ( [ partition_by_clause ] order_by_clause)
Аргументы
ALL
Применяет функцию ко всем значениям. ALL является параметром по умолчанию.
DISTINCT
Указывает, что учитывается каждое уникальное значение.
выражение
Числовое выражение. Агрегатные функции и вложенные запросы не допускаются.
expression — выражение категории точного числового или приблизительного числового типа данных, за исключением типа данных bit.
ПРИЁМ ( [ partition_by_clause ] order_by_clause)
partition_by_clause делит результирующий набор, полученный с помощью предложения FROM, на секции, к которым применяется функция. Если этот параметр не указан, функция обрабатывает все строки результирующего набора запроса как отдельные группы.
order_by_clause определяет логический порядок, в котором выполняется операция. Аргумент order_by_clause является обязательным. Дополнительные сведения см. в статье Предложение OVER (Transact-SQL).
Типы возвращаемых данных
float
Замечания
Если функция STDEV используется для всех элементов в инструкции SELECT, то в вычисление включается каждое значение результирующего набора. Функцию STDEV можно использовать только для числовых столбцов. Значения NULL пропускаются.
STDEV — это детерминированная функция, если она используется без предложений OVER и ORDER BY. Она не детерминирована при использовании с предложениями OVER и ORDER BY. Дополнительные сведения см. в разделе Deterministic and Nondeterministic Functions.
Примеры
А. Использование функции STDEV
Следующий пример возвращает стандартное отклонение для всех бонусных значений в SalesPerson таблице базы данных AdventureWorks2025.
SELECT STDEV(Bonus)
FROM Sales.SalesPerson;
GO
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
Б. Использование функции STDEV
В приведенном ниже примере возвращается стандартное отклонение значений квот на продажу в таблице dbo.FactSalesQuota. Первый столбец содержит стандартное отклонение всех уникальных значений, а второй — стандартное отклонение всех значений, включая повторяющиеся.
-- Uses AdventureWorks
SELECT STDEV(DISTINCT SalesAmountQuota)AS Distinct_Values, STDEV(SalesAmountQuota) AS All_Values
FROM dbo.FactSalesQuota;
Вот результирующий набор.
Distinct_Values All_Values
---------------- ----------------
398974.27 398450.57
В. Использование STDEV с предложением OVER
В приведенном ниже примере возвращается стандартное отклонение для значений квот на продажу в каждом квартале календарного года. Обратите внимание на то, что ORDER BY в предложении OVER упорядочивает STDEV, а ORDER BY в инструкции SELECT упорядочивает результирующий набор.
-- Uses AdventureWorks
SELECT CalendarYear AS Year, CalendarQuarter AS Quarter, SalesAmountQuota AS SalesQuota,
STDEV(SalesAmountQuota) OVER (ORDER BY CalendarYear, CalendarQuarter) AS StdDeviation
FROM dbo.FactSalesQuota
WHERE EmployeeKey = 272 AND CalendarYear = 2002
ORDER BY CalendarQuarter;
Вот результирующий набор.
Year Quarter SalesQuota StdDeviation
---- ------- ---------------------- -------------------
2002 1 91000.0000 null
2002 2 140000.0000 34648.23
2002 3 70000.0000 35921.21
2002 4 154000.0000 39752.36
См. также
Агрегатные функции (Transact-SQL)
Предложение OVER (Transact-SQL)