在 MySQL 中,最常见的去重方法有两个:使用 distinct 或使用 group by,那它们有什么区别呢?接下来我们一起来看。
1、创建测试数据
-- 创建测试表 drop table if exists pageview; create table pageview( id bigint primary key auto_increment comment '自增主键', aid bigint not null comment '文章ID', uid bigint not null comment '(访问)用户ID', createtime datetime default now() comment '创建时间' ) default charset='utf8mb4'; -- 添加测试数据 insert into pageview(aid,uid) values(1,1); insert into pageview(aid,uid) values(1,1); insert into pageview(aid,uid) values(2,1); insert into pageview(aid,uid) values(2,2);
最终展现效果如下:
2、distinct 使用
distinct 基本语法如下:
SELECT DISTINCT column_name,column_name FROM table_name;
(1)单列去重
我们先用 distinct 实现单列去重,根据 a