SELECT uid
        ,exam_id
        ,ROUND(AVG(score), 0) AS avg_score
FROM user_info
JOIN exam_record USING(uid)
JOIN examination_info USING(exam_id)
WHERE nick_name REGEXP '^牛客[0-9]+号$|^[0-9]+$' 
        AND tag LIKE "C%"
        AND submit_time IS NOT NULL
GROUP BY uid, exam_id
ORDER BY uid, avg_score
  • REGEXP实现多个数据的并
  • '^牛客[0-9]+号$'中+意味着[]中的值可以取多个,如果缺少加号则只能取一个
  • '^[0-9]+$'中必须加上 ^与$,以实现开头和末尾都是以紧邻的内容开始或结束,如果不加^与$则搜索所有含有[0-9]的数