distinct 和 group by 有什么区别(没有聚合函数)

What is difference between distinct and group by (without aggregate function)

我想知道,对于删除重复行,哪个查询更好? (更快、更优化):

select distinct col from table;

select col from table group by col;

如你所见,没有任何聚合函数,那么哪个更好?或者换句话说,它们之间有什么区别?

GROUP BY 允许您使用聚合函数,例如 AVG、MAX、MIN、SUM 和 COUNT。另一方面,DISTINCT 只是删除重复项。

你也可以阅读这个答案:

请使用 DISTINCT 删除重复行,因为此构造是专门设计用于此目的。它更短,更易于阅读和理解。