当distinct应用到多个字段的时候,其应用的范围是其后面的所有字段,而不只是紧挨着它的一个字段,而且distinct只能放到所有字段的前面
如下语句是错误的:
SELECT country, distinct province from person; // 该语句是错误的
distinct对NULL是不进行过滤的,即返回的结果中是包含NULL值的。
与ALL不能同时使用
默认情况下,查询时返回所有的结果,此时使用的就是all语句,这是与distinct相对应的,
对*的处理
*代表整列,使用distinct对*操作
sql
select DISTINCT * from person
相当于
select DISTINCT id, `name`, country, province, city from person;