底层逻辑上: DISTINCT是去重删除GROUP BY是分组合并 测试结果: 重复度高时,DISTINCT快重复度低时,GROUP BY快 另外,DISTINCT和GROUP BY的count记录数有区别: SELECT count(DISTINCT xx) FROM tb; — 会计算空值NULLSELECT xx,count(1) FROM tb GROUP BY xx; — 不会计算空值NULL