SELECT pr.provid, pr.provname, COUNT(DISTINCT impo.cid) AS Count2Q, SUM(CASE WHEN impo.score2q >= 1 THEN 1 ELSE NULL END) AS 2QPositive
FROM depres_person_2q_new impo
INNER JOIN depres_office o ON impo.offid = o.offid
INNER JOIN depres_province pr ON o.provid = pr.provid
INNER JOIN depres_person_9q n ON impo.cid = n.cid
INNER JOIN depres_person_8q e ON impo.cid = e.cid
WHERE impo.lastupdate between '2010-10-01' and '2011-03-21'
GROUP BY pr.provname
ปัญหาคือ ในส่วน SUM(CASE WHEN impo.score2q >= 1 THEN 1 ELSE NULL END) AS 2QPositive
มี impo.cid ที่มีค่า impo.score2q>=1 ซ้ำกันอยู่ครับ อยากให้รวมเฉพาะ impo.cid เดียวที่ไม่ซ้ำกัน ต้องเขียนคำสั่งยังไงครับ