SUM ( CASE WHEN i.status = 50 THEN 1 ELSE 0 END ) "tested",
SUM ( CASE WHEN i.status = 20 AND COALESCE ( ii.fill_num, 0 ) > 0 THEN 1 ELSE 0 END ) "total",
SUM ( CASE WHEN i.status = 20 AND COALESCE ( ii.fill_num, 0 ) = 0 THEN 1 ELSE 0 END ) "notTesting"
u.realname,
ug.group_ids,
COALESCE(i.tested,0) "tested",
COALESCE(i.total,0) "total",
COALESCE(i."notTesting",0) "notTesting"
FROM
v_sys_user u
JOIN v_lms_user_group ug ON u.user_id = ug.user_id
LEFT JOIN entrust_sample_item i ON ug.user_id = i.tester_Id
AND i.deleted = 0
LEFT JOIN ( SELECT ii.entrust_sample_item_id, COUNT ( 1 ) "fill_num" FROM entrust_sample_item_index ii WHERE ii.deleted = 0 GROUP BY ii.entrust_sample_item_id ) ii ON ii.entrust_sample_item_id = i.ID
GROUP BY
ug.user_id,
u.username,
ug.realname
JOIN v_lms_user_groups ug ON u.user_id = ug.user_id