SELECT DISTINCT (SQL SELECT DISTINCT Statement)

一個資料表的某欄位中可能會有多個紀錄都是相同值的情況,在 SELECT 查詢語句中我們可使用 DISTINCT 關鍵字過濾重複出現的紀錄值。

SELECT DISTINCT 語法 (SELECT DISTINCT Syntax)

SELECT DISTINCT table_column1, table_column2···
FROM table_name;

SELECT DISTINCT 查詢實例 (Example)

假設我們想從下面的「customers」資料表中查詢顧客分佈在哪幾個縣市:
C_Id Name City Address Phone
1 張一 台北市 XX路100號 02-12345678
2 王二 新竹縣 YY路200號 03-12345678
3 李三 高雄縣 ZZ路300號 07-12345678
4 陳四 台北市 AA路400號 02-87654321

我們可以下這個 SELECT 查詢敘述句:
SELECT DISTINCT City FROM customers;

返回的資料集如下:
City
台北市
新竹縣
高雄縣
原本資料表的 City 欄位中有兩個重複值「台北市」,可是我們只想知道有哪幾個縣市有顧客而已,故我們使用 DISTINCT 關鍵字來限制僅取出欄位中「不相同」的值。
若接著SELECT DISTINCT後面有指定兩個以上的欄位,則要符合所有欄位值皆同樣重複的情況下該筆資料才會被捨棄。(若只有其中一個欄位值相同但其它欄位值並不同,則仍會取出該筆資料。)