1)使用distinct要写在所有要查询字段的前面,后面有几个字段,就代表修饰几个字段,而不是紧随distinct的字段;
2)group by执行后(有聚合函数),group by后面的字段在结果中一定是唯一的,也就不需要针对这个字段用distinct;
1)Mysql语法顺序,即当sql中存在下面的关键字时,它们要保持这样的顺序
-
select[distinct]
-
from
-
join(如left join)
-
on
-
where
-
group by
-
having
-
union
-
order by
-
limit
2)Mysql执行顺序,即在执行时sql按照下面的顺序进行执行:
-
from
-
on
-
join
-
where
-
group by
-
having
-
select
-
distinct
-
union
-
order by