SQL語句distinct去重使用方法

2021-09-26 05:20:39 字數 768 閱讀 4611

很多時候資料庫查出來的資料會出現重複的情況。

不過這些情況用distinct就可以解決。

表a:id

name1a

2b3c

4b1a

表b:province

city

河北省石家莊市

河北省石家莊市

select distinct name from a

執行之後的結果:

nameab

c例項1:

select distinct id,name from a

執行之後的結果如下:

idname1a

2b3c

4b例項2:

select distinct province,city from b

執行之後的結果:

province

city

河北省石家莊市

河北省石家莊市

由此可見,distinct去重是根據每一列進行去重,作用於province 和 city 兩個字段,不是province 和 city 兩列「字串拼接」後再去重的。

distinct必須寫在字段前面。

select id,name distinct from a

這樣寫就會報錯。

count去重和distinct去重

有兩種去重方法 1 select count distinct id from a 這個是將所有值都放入到記憶體中,key為列值,通過hash算出有多少個key就是多少行。2 select count 1 from select 1 from a group by id a,這個是通過group b...

Oracle的去重函式 distinct

sql中distinct的用法 表a 表b select distinct name from a執行後結果如下 示例2.1 select distinct name,id from a執行後結果如下 實際上是根據name和id兩個欄位來去重的,這種方式access和sql server同時支援。示...

去重是distinct還是group by?

distinct簡單來說就是用來去重的,而group by的設計目的則是用來聚合統計的,兩者在能夠實現的功能上有些相同之處,但應該仔細區分,因為用錯場景的話,效率相差可以倍計。單純的去重操作使用distinct,速度是快於group by的。distinct distinct支援單列 多列的去重方式...