解析在一个SQL语句中同时出现count()、where、group by 的先后执行顺序

如:select count(*) from tab1 where publi_id='1000000141' and cent_id='3702000001'

它是先根据条件利用where查询出所有数据,然后利用count将每条数据汇总,就是算一下有多少条数据

如:select count(*) from tab1 where publi_id='1000000141' and cent_id='3702000001'   group by  comp_id

解析在一个SQL语句中同时出现count()、where、group by 的先后执行顺序_第1张图片

它是先根据where条件查询出所有的数据,然后按照group by 来对comp_id进行分组,分完组后count会对每组的每条数据进行汇总

(注意:group by 后,count是对每组中的数据进行汇总)

你可能感兴趣的:(数据库)