distinct多字段去重 oracle查詢時(shí)用distinct的執(zhí)行效率和用group by的效率誰(shuí)更高一些?
oracle查詢時(shí)用distinct的執(zhí)行效率和用group by的效率誰(shuí)更高一些?Oracle開(kāi)發(fā)中禁止使用關(guān)鍵字distinct。如果存在distinct,則使用group by。MySQL中di
oracle查詢時(shí)用distinct的執(zhí)行效率和用group by的效率誰(shuí)更高一些?
Oracle開(kāi)發(fā)中禁止使用關(guān)鍵字distinct。
如果存在distinct,則使用group by。
MySQL中distinct與groupby之間的性能進(jìn)行比較?
這取決于字段的大小。不同的方法是兩兩比較。你需要遍歷整個(gè)桌子。分組分組類似于先建立索引,再查找索引,因此與二者相比,小表目的地更快,不需要建立索引。這只大表很快。一般來(lái)說(shuō),即使一個(gè)小表被索引,它也不會(huì)慢下來(lái)。但是,如果它是一個(gè)TB級(jí)的大表,遍歷就是一場(chǎng)災(zāi)難。因此,許多Oracle項(xiàng)目禁止使用distinct語(yǔ)句,并且都要求用group by替換。
Oracle很大的表distinct查詢?
獨(dú)特的機(jī)制是兩個(gè)值逐個(gè)比較,需要遍歷整個(gè)表。如果桌子太大,那就是一場(chǎng)災(zāi)難。
先統(tǒng)計(jì)后查詢分組,即先索引后查詢。桌子越大,效率越高。
許多Oracle項(xiàng)目禁止使用distinct語(yǔ)句,所有語(yǔ)句都由group by替換