1. 程式人生 > >mysql-查詢多列不重複的資料

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','西安');

這是我目前使用的方法,如果大家有更好的,請留言告知,謝謝。