เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

สรุปข้อมูลในช่วงเวลาที่กำหนด

SQL Server มีฟังก์ชัน aggregate ที่มีประโยชน์หลายตัว ซึ่งช่วยให้เราสรุปข้อมูลตามช่วงเวลาและดึงข้อมูลเชิงลึกได้ ในแบบฝึกหัดต่อไปนี้ เราจะดูชุดรายงานเหตุการณ์ (incident reports) ของบริษัทสมมติแห่งหนึ่ง โดยข้อมูลถูกรวบรวมไว้ในระดับรายวันแล้ว ทำให้เรามีจำนวนเหตุการณ์แยกตามประเภทและวันที่ เราต้องการวิเคราะห์เพิ่มเติมโดยดูข้อมูลเหตุการณ์ในช่วงสามเดือน ตั้งแต่วันที่ 1 สิงหาคม ถึง 31 ตุลาคม และสรุปข้อมูลเบื้องต้นผ่านการ aggregate

ฟังก์ชัน aggregate หลักที่จะใช้ในแบบฝึกหัดนี้คือ COUNT(), SUM(), MIN() และ MAX() ในแบบฝึกหัดถัดไป เราจะศึกษาฟังก์ชัน aggregate เชิงสถิติเพิ่มเติม

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การวิเคราะห์อนุกรมเวลาใน SQL Server

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เลือกฟังก์ชัน aggregate ที่เหมาะสมตามชื่อคอลัมน์ โดยเลือกจาก COUNT(), SUM(), MIN() และ MAX()

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

-- 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;
แก้ไขและรันโค้ด