首先三个单词都可以进行条件筛选,各自使用时机不一样 where 作为最常用的条件筛选适用于多数情况下,where适用于分组筛选之前,筛选条件不需要临时表,效率比较高having 主要用于筛选条件在分组之后,对聚合函数进行判断如对平均分>60进行判断,having通常与group by配合 也可以单独使用on 主要用于子查询产生临时表时进行条件判断。