distinct簡單來說就是用來去重的,而group by的設(shè)計目的則是用來聚合統(tǒng)計的,兩者在能夠?qū)崿F(xiàn)的功能上有些相同之處,但應(yīng)該仔細(xì)區(qū)分。
單純的去重操作使用distinct,速度是快于group by的。
distinct支持單列、多列的去重方式。
單列去重的方式簡明易懂,即相同值只保留1個。
多列的去重則是根據(jù)指定的去重的列信息來進(jìn)行,即只有所有指定的列信息都相同,才會被認(rèn)為是重復(fù)的信息。
group by使用的頻率相對較高,但正如其功能一樣,它的目的是用來進(jìn)行聚合統(tǒng)計的,雖然也可能實現(xiàn)去重的功能,但這并不是它的長項。
區(qū)別:
1)distinct只是將重復(fù)的行從結(jié)果中出去;
group by是按指定的列分組,一般這時在select中會用到聚合函數(shù)。
2)distinct是把不同的記錄顯示出來。
group by是在查詢時先把紀(jì)錄按照類別分出來再查詢。
group by 必須在查詢結(jié)果中包含一個聚集函數(shù),而distinct不用。
到此這篇關(guān)于Mysql中distinct與group by的去重方面的區(qū)別的文章就介紹到這了,更多相關(guān)distinct與group by的區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
標(biāo)簽:寧夏 秦皇島 澳門 恩施 定西 杭州 白銀 益陽
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql中distinct與group by的去重方面的區(qū)別》,本文關(guān)鍵詞 Mysql,中,distinct,與,group,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。