这道题主要是让我对group by这个分组概念有了更深的体会。
上一道题是根据title分组,我写的是:
select t.title,count(t.title) as t from titles t group by t>=2;
其实当时还是半知半解,因为使用count(t.emp_no)依然能通过。就不免有些疑惑。ps:其他的字段也都能通过。
然后做了这一题,思考之后忽然就明白了。
count()在进行计算数量的时候是基于分组的概念的,也就是这个组里面的字段出现的次数。这样理解的话,就不免也能明白为什么
写成distinct t.emp_no能得到去重emp_no之后的数据了。