mysql的distinct直觀用法

(非原創)、mysql

在使用mysql時,有時須要查詢出某個字段不重複的記錄,這時能夠使用mysql提供的distinct這個關鍵字來過濾重複的記錄,可是實際中咱們每每用distinct來返回不重複字段的條數(count(distinct id)),其緣由是distinct只能返回他的目標字段,而沒法返回其餘字段,例若有以下表user:sql

用distinct來返回不重複的用戶名:select distinct name from user;,結果爲:3d

這樣只把不重複的用戶名查詢出來了,可是用戶的id,並無被查詢出來:select distinct name,id from user;,這樣的結果爲:blog

distinct name,id 這樣的mysql 會認爲要過濾掉name和id兩個字段都重複的記錄,若是sql這樣寫:select id,distinct name from user,這樣mysql會報錯,由於distinct必須放在要查詢字段的開頭。select

因此通常distinct用來查詢不重複記錄的條數。im

若是要查詢不重複的記錄,有時候能夠用group by :d3

select id,name from user group by name;查詢

相關文章
相關標籤/搜索