SQLite 的 DISTINCT 關鍵字與 SELECT 語句一起使用,來消除所有重復的記錄,並只獲取唯一一次記錄。
有可能出現一種情況,在一個表中有多個重復的記錄。當提取這樣的記錄時,DISTINCT 關鍵字就顯得特別有意義,它只獲取唯一一次記錄,而不是獲取重復記錄。
用於消除重復記錄的 DISTINCT 關鍵字的基本語法如下:
SELECT DISTINCT column1, column2,.....columnN FROM table_name WHERE [condition]
假設 COMPANY 表有以下記錄:
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0 8 Paul 24 Houston 20000.0 9 James 44 Norway 5000.0 10 James 45 Texas 5000.0
首先,讓我們來看看下面的 SELECT 查詢,它將返回重復的工資記錄:
sqlite> SELECT name FROM COMPANY;
這將產生以下結果:
NAME ---------- Paul Allen Teddy Mark David Kim James Paul James James
現在,讓我們在上述的 SELECT 查詢中使用 DISTINCT 關鍵字:
sqlite> SELECT DISTINCT name FROM COMPANY;
這將產生以下結果,沒有任何重復的條目:
NAME ---------- Paul Allen Teddy Mark David Kim James