W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在 PostgreSQL 中,DISTINCT 關(guān)鍵字與 SELECT 語句一起使用,用于去除重復(fù)記錄,只獲取唯一的記錄。
我們平時(shí)在操作數(shù)據(jù)時(shí),有可能出現(xiàn)一種情況,在一個(gè)表中有多個(gè)重復(fù)的記錄,當(dāng)提取這樣的記錄時(shí),DISTINCT 關(guān)鍵字就顯得特別有意義,它只獲取唯一一次記錄,而不是獲取重復(fù)記錄。
用于去除重復(fù)記錄的 DISTINCT 關(guān)鍵字的基本語法如下:
SELECT DISTINCT column1, column2,.....columnN FROM table_name WHERE [condition]
創(chuàng)建 COMPANY 表 ,數(shù)據(jù)內(nèi)容如下:
w3cschooldb# select * from COMPANY; id | name | age | address | salary ----+-------+-----+-----------+-------- 1 | Paul | 32 | California| 20000 2 | Allen | 25 | Texas | 15000 3 | Teddy | 23 | Norway | 20000 4 | Mark | 25 | Rich-Mond | 65000 5 | David | 27 | Texas | 85000 6 | Kim | 22 | South-Hall| 45000 7 | James | 24 | Houston | 10000 (7 rows)
讓我們插入兩條數(shù)據(jù):
INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (8, 'Paul', 32, 'California', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (9, 'Allen', 25, 'Texas', 15000.00 );
現(xiàn)在數(shù)據(jù)如下:
id | name | age | address | salary ----+-------+-----+------------+-------- 1 | Paul | 32 | California | 20000 2 | Allen | 25 | Texas | 15000 3 | Teddy | 23 | Norway | 20000 4 | Mark | 25 | Rich-Mond | 65000 5 | David | 27 | Texas | 85000 6 | Kim | 22 | South-Hall | 45000 7 | James | 24 | Houston | 10000 8 | Paul | 32 | California | 20000 9 | Allen | 25 | Texas | 15000 (9 rows)
接下來我們找出 COMPANY 表中的所有 NAME:
w3cschooldb=# SELECT name FROM COMPANY;
得到結(jié)果如下:
name ------- Paul Allen Teddy Mark David Kim James Paul Allen (9 rows)
現(xiàn)在我們?cè)?SELECT 語句中使用 DISTINCT 子句:
w3cschooldb=# SELECT DISTINCT name FROM COMPANY;
得到結(jié)果如下:
name ------- Teddy Paul Mark David Allen Kim James (7 rows)
從結(jié)果可以看到,重復(fù)數(shù)據(jù)已經(jīng)被刪除。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: