Bạn có thể làm điều này với:
SELECT date, COUNT(dom), QA, COUNT(NULLIF(errors, 'No')) FROM reports WHERE date="2010-03-22" GROUP BY QA
Để giải thích cách thức hoạt động:COUNT
trả về số lượng giá trị không rỗng. Chúng tôi có thể sử dụng điều này làm lợi thế của mình bằng cách chuyển lỗi bằng 'No'
thành NULL
, vì vậy COUNT
sẽ không tính chúng. Chúng tôi thực hiện việc này với NULLIF
hàm trả về NULL
nếu đối số thứ nhất và thứ hai bằng nhau.