НачатьНачать бесплатно

Работа со статистическими агрегатными функциями

SQL Server предлагает несколько агрегатных функций для статистического анализа. Функция AVG() вычисляет среднее значение выборки. STDEV() и STDEVP() возвращают стандартное отклонение выборки и генеральной совокупности соответственно. VAR() и VARP() возвращают дисперсию выборки и генеральной совокупности соответственно. Эти функции дополняют агрегатные функции из предыдущего упражнения: SUM(), COUNT(), MIN() и MAX().

В этом упражнении мы снова обратимся к данным о сводке инцидентов и типах инцидентов — на этот раз за второй квартал 2020 календарного года. Нас интересует разброс в количестве инцидентов: наблюдается ли примерно одинаковое число случаев каждый день или оно существенно колеблется.

Это упражнение является частью курса

Анализ временных рядов в SQL Server

Посмотреть курс

Инструкции к упражнению

  • Заполните пропущенные агрегатные функции. Для стандартного отклонения и дисперсии используйте функции для выборки, а не для генеральной совокупности.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- Fill in the missing function names
SELECT
	it.IncidentType,
	___(ir.NumberOfIncidents) AS MeanNumberOfIncidents,
	___(CAST(ir.NumberOfIncidents AS DECIMAL(4,2))) AS MeanNumberOfIncidents,
	___(ir.NumberOfIncidents) AS NumberOfIncidentsStandardDeviation,
	___(ir.NumberOfIncidents) AS NumberOfIncidentsVariance,
	___(1) AS NumberOfRows
FROM dbo.IncidentRollup ir
	INNER JOIN dbo.IncidentType it
		ON ir.IncidentTypeID = it.IncidentTypeID
	INNER JOIN dbo.Calendar c
		ON ir.IncidentDate = c.Date
WHERE
	c.CalendarQuarter = 2
	AND c.CalendarYear = 2020
GROUP BY
it.IncidentType;
Редактировать и запускать код