select DATE_FORMAT(submit_time,'%Y%m') month, round(count(distinct uid,DATE_FORMAT(submit_time,'%Y%m%d'))/count(distinct uid),2) as avg_active_days, # 这边改成count(distinct uid,DATE_FORMAT(submit_time,'%Y%m%d')对日期和uid进行组合才对了,原本是写成count(distinct DATE_FORMAT(submit_time,'%Y%m%d')+uid)组成唯一标识来进行统计的,但是发现不对。虽然现在通过了但是还是感觉有些疑惑。 count(distinct uid) mau from exam_record WHERE YEAR(submit_time)=2021 and submit_time is not null GROUP BY DATE_FORMAT(submit_time,'%Y%m')