在mysql中,distinct關鍵字用於過濾重複資料,它可以對資料表中一個或多個欄位重複的資料進行過濾,只返回其中的一條資料給使用者;distinct關鍵字需要和SELECT語句一起使用,語法「SELECT DISTINCT column1, column2, ... FROM table_name; 」。
程式設計師必備介面測試偵錯工具:
本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。
在 MySQL 中使用 SELECT 語句執行簡單的資料查詢時,返回的是所有匹配的記錄。如果表中的某些欄位沒有唯一性約束,那麼這些欄位就可能存在重複值。為了實現查詢不重複的資料,MySQL 提供了 DISTINCT 關鍵字。
DISTINCT 關鍵字的主要作用就是對資料表中一個或多個欄位重複的資料進行過濾,只返回其中的一條資料給使用者。
DISTINCT 關鍵字的語法格式為:
SELECT DISTINCT column1, column2, ...
FROM table_name;
登入後複製
其中,「column
」為需要消除重複記錄的一個或多個欄位名稱,多個欄位時用逗號隔開。
使用 DISTINCT 關鍵字時需要注意以下幾點:
DISTINCT 關鍵字只能在 SELECT 語句中使用。
在對一個或多個欄位去重時,DISTINCT 關鍵字必須在所有欄位的最前面。
如果 DISTINCT 關鍵字後有多個欄位,則會對多個欄位進行組合去重,也就是說,只有多個欄位組合起來完全是一樣的情況下才會被去重。
演示資料庫
以下是Northwind範例資料庫中「Customers」表的選擇:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constituciуn 2222 | Mйxico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquerнa | Antonio Moreno | Mataderos 2312 | Mйxico D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbkцp | Christina Berglund | Berguvsvдgen 8 | Luleе | S-958 22 | Sweden |
沒有使用DISTINCT的SELECT範例
以下SQL語句從「Customers」表中的「Country」列中選擇ALL(包括重複項)值:
SELECT Country FROM Customers;
登入後複製
SELECT DISTINCT範例
1、僅從「Customers」表中的「Country」列中選擇DISTINCT值:
SELECT DISTINCT Country FROM Customers;
登入後複製
2、列出了不同 「Country」 的數量:
SELECT COUNT(DISTINCT Country) FROM Customers;
登入後複製
注意:上面的範例在Firefox和Microsoft Edge中不起作用!因為Microsoft Access資料庫不支援COUNT(DISTINCT column_name)。Firefox和Microsoft Edge在我們的範例中使用Microsoft Access。
【相關推薦:】
以上就是mysql distinct怎麼用的詳細內容,更多請關注TW511.COM其它相關文章!