最近在做数据库查询的时候遇到一个问题,需要在一个表中分页取出满足条件的记录,但是要根据某一字段进行去重。在网上查了查发现SQL语句中去重的方法有两种,第一种是用DISTINCT,第二种使用GROUP BY 。但是网上说的GROUP BY比DISTINCT性能要好,但是暂未做测试.
首先第一种方法:DISTINCT
语法:
SELECT DISTINCT 列1 , 列2 FROM 表名称
意思是取出该表中 列1且列2 的数据不重复的记录
注意:1,DISTINCT语句中select显示的字段只能是DISTINCT指定的字段,其他字段是不可能出现的。2,DISTINCT必须放在开头。
第二种方法:GROUP BY
语法:
SELECT 列1 FROM 表名称
GROUP BY 列1
注意:GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。此处是为了实现去重功能。