select uid,
'activity1' as activity
from examination_info
join exam_record using(exam_id)
where year(submit_time)=2021
group by uid
having min(score) >= 85

union

select distinct uid,
'activity2' as activity
from examination_info
join exam_record using(exam_id)
where year(submit_time)=2021 
and score > 80 
and timestampdiff(minute,start_time,submit_time)<duration/2 
# 这边要注意不是小于等于,题目描述有问题,实际是要用小于一半时间完成
and difficulty = 'hard'
order by uid