问题:id为用户主键id,number代表积分情况,让你写一个sql查询,积分表里面出现三次以及三次以上的积分,查询结果如下。注意:若有多个符合条件的number,则按number升序排序输出。

问题拆解:1.先按照grade分组,限定条件求出分组后的grade count大于等于3次的字段;

2.从新生成的表格中提取需要的number,最后按照number排序即可。

select re.number from
    (select g.number, count(*) from grade g
    group by g.number
    having count(*)>=3) re
order by re.number