Zacznij terazZacznij za darmo

Podsumowywanie danych w określonym przedziale czasu

SQL Server oferuje kilka przydatnych funkcji agregujących, które pozwalają podsumowywać dane w różnych przedziałach czasu i wyciągać z nich wnioski. W poniższym ćwiczeniu przyjrzysz się zestawowi raportów o incydentach z fikcyjnej firmy. Dane zostały już zagregowane do poziomu dziennego, co oznacza, że mamy do dyspozycji liczbę incydentów według typu i dnia. Naszym celem jest dokładniejsza analiza incydentów z okresu trzech miesięcy – od 1 sierpnia do 31 października – przy użyciu podstawowych funkcji agregujących.

Wykorzystamy cztery kluczowe funkcje agregujące: COUNT(), SUM(), MIN() i MAX(). W kolejnym ćwiczeniu poznasz statystyczne funkcje agregujące.

To ćwiczenie jest częścią kursu

Analiza szeregów czasowych w SQL Server

Zobacz kurs

Instrukcje do ćwiczenia

  • Uzupełnij zapytanie odpowiednią funkcją agregującą dopasowaną do nazwy kolumny. Wybierz spośród COUNT(), SUM(), MIN() i MAX().

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

-- Fill in the appropriate aggregate functions
SELECT
	it.IncidentType,
	___(1) AS NumberOfRows,
	___(ir.NumberOfIncidents) AS TotalNumberOfIncidents,
	___(ir.NumberOfIncidents) AS MinNumberOfIncidents,
	___(ir.NumberOfIncidents) AS MaxNumberOfIncidents,
	___(ir.IncidentDate) As MinIncidentDate,
	___(ir.IncidentDate) AS MaxIncidentDate
FROM dbo.IncidentRollup ir
	INNER JOIN dbo.IncidentType it
		ON ir.IncidentTypeID = it.IncidentTypeID
WHERE
	ir.IncidentDate BETWEEN '2019-08-01' AND '2019-10-31'
GROUP BY
	it.IncidentType;
Edytuj i uruchom kod