mysql中去除重復字段-distinct


1、注意事項

使用distinct命令時需要放在查詢條件的開頭,否則會報錯。如果需要查詢的項目很多但只針對某一個字段使用distinct的,則可以利用內容拼接的方式來實現。

 

--基本查詢

SELECT DISTINCT `name` from users;

--顯示結果

name

張三

李四

王五

趙六

 

--多表查詢

SELECT DISTINCT name,age FROM users;

--顯示結果(此處distinct的條件是name和age兩個字段,也就是只有兩個都重復了才進行篩選。)

--此處去除了李四 | 21

name | age

張三  | 20

李四  | 21

王五  | 21

趙六  | 20

張三  | 22

 

--在count中使用distinct

SELECT count(DISTINCT name,age) FROM users;

--顯示結果

5

 

--如果只處理name字段,但是查詢顯示name和age,則建議使用GROUP BY命令

--(單用distinct不好實現)

SELECT name, age FROM users GROUP BY name;

--顯示結果

name | age

張三  | 20

李四  | 21

王五  | 21

趙六  | 20

--!!注意:如果SQL語句還有limit,order by等條件,必須放在group by后面。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM