Tính số lượng giá trị duy nhất
Hàm COUNT() có một biến thể khá hữu ích: COUNT(DISTINCT). Hàm đếm khác biệt này cho phép bạn tính số lượng phần tử duy nhất trong một tập dữ liệu, vì vậy COUNT(DISTINCT x.Y) sẽ lấy số lượng giá trị khác nhau của cột Y trên bảng được đặt bí danh là x.
Trong ví dụ này, bạn sẽ tiếp tục xem dữ liệu tổng hợp sự cố trong bảng dbo.IncidentRollup. Ban quản lý muốn biết có bao nhiêu loại sự cố khác nhau trong bộ dữ liệu ba tháng, cũng như số ngày có xảy ra sự cố.
Họ đã biết tổng số sự cố vì bạn đã cung cấp thông tin đó trong bài tập trước.
Bài tập này là một phần của khóa học
Phân tích chuỗi thời gian trong SQL Server
Hướng dẫn bài tập
- Trả về số lượng giá trị khác nhau trong
IncidentTypeIDvới bí danhNumberOfIncidentTypes. - Trả về số lượng giá trị khác nhau trong
IncidentDatevới bí danhNumberOfDaysWithIncidents
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
-- Fill in the functions and columns
SELECT
___(___ ir.___) AS NumberOfIncidentTypes,
___(___ ir.___) AS NumberOfDaysWithIncidents
FROM dbo.IncidentRollup ir
WHERE
ir.IncidentDate BETWEEN '2019-08-01' AND '2019-10-31';