mysql-查询多列不重复的数据

关键词 DISTINCT 用于返回唯一不同的值。

语法:SELECT DISTINCT 列名称 FROM 表名称

如果要查询某列完全不同的值,可以这样用distinct。如果是多列呢?这时只用distinct明显不能实现。

比如:要查询FirstName和Address完全不同的数据;

数据表
想要查询如下结果的数据:
这里写图片描述

使用多列分组查询则可以实现该查询要求:

SELECT p.id,p.FirstName,p.Address FROM persons1 p GROUP BY p.FirstName,p.Address ORDER BY p.id;

相关sql:

CREATE TABLE persons1
(
id int,
FirstName varchar(255),
Address varchar(255)
);

INSERT INTO persons1 VALUES (1,'a','北京');
INSERT INTO persons1 VALUES (2,'b','北京');
INSERT INTO persons1 VALUES (3,'a','南京');
INSERT INTO persons1 VALUES (4,'c','西安');
INSERT INTO persons1 VALUES (5,'a','北京');
INSERT INTO persons1 VALUES (6,'c','西安');

这是我目前使用的方法,如果大家有更好的,请留言告知,谢谢。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值