mysql distinct的妙用 順便提下mysql的DISTINCT的關鍵字有很多你想不到的用處 1.在count 不重復的記錄的時候能用到 比如SELECT COUNT( DISTINCT id ) FROM tablename; 就是計算talbebname表中id不同的記錄有多少條 2,在需要返回記錄不同的id的具體值的時候可以用 比如SELECT DISTINCT id FROM tablename; 返回talbebname表中不同的id的具體的值 3.上面的情況2對於需要返回mysql表中2列以上的結果時會有歧義 比如SELECT DISTINCT id, type FROM tablename; 實際上返回的是 id與type同時不相同的結果,也就是DISTINCT同時作用了兩個字段,必須得id與tyoe都相同的才被排除了,與我們期望的結果不一樣 4.這時候可以考慮使用group_concat函數來進行排除,不過這個mysql函數是在mysql4.1以上才支持的 5.其實還有另外一種解決方式,就是使用 SELECT id, type, count(DISTINCT id) FROM tablename 雖然這樣的返回結果多了一列無用的count數據(或許你就需要這個我說的無用數據) 返回的結果是 只有id不同的所有結果和上面的4類型可以互補使用,就是看你需要什麼樣的數據了