mysql的去重複處理

2021-06-05 16:21:00 字數 999 閱讀 8001

mysql的去重複處理

在使用mysql時,有時需要查詢出某個欄位不重複的記錄,mysql提供有distinct這個關鍵字來過濾掉多餘的重覆記錄只保留一條。

注意該查詢只是簡單地檢索每個記錄的列,並且他們中的一些出現多次。為了使輸出減到最少,增加關鍵字distinct檢索出每個唯一的輸出記錄。

talbe name: userinfo

uid       passport     addtime

1          a                  2012-04-10

2         b                  2012-04-10

3         a                  2012-04-10

4         b                 2012-04-10

5         b                 2012-04-10

語句:select  distinct  passport  from  userinfo

結果:

passportab

但有的時候我們需要檢索出這條記錄在表中出現了多少次那麼sql語句該怎麼寫呢?

語句:select distinct passport,count(*)  as hits from userinfo group by passport

結果:passport    hits

a                  2

b                 3

更進一步說我想獲得這個表中的其他一些資訊呢(比如將其中出現三次以上的記錄篩選出來呢)

語句:  select   t.passport  from (   select distinct passport,count(*)  as hits from userinfo group by passport )  t    where t.hits>2

結果:passport

b

MySQL對主鍵重複的處理

在向乙個表中插入資料的時候,有一種常見的需求 判斷插入的值是否在表中已經存在,如果是則執行update操作,否則執行insert。在oracle裡可以使用merge into來實現,mysql也對標準sql進行了擴充套件來實現此功能。1.replace into replace類似於insert,區...

MySQL之去重(DISTINCT去掉重複資料)

在使用 mysql select 語句查詢資料的時候返回的是所有匹配的行。例如,查詢 tb students info 表中所有 age 的執行結果如下所示。可以看到查詢結果返回了 10 條記錄,其中有一些重複的 age 值,有時出於對資料分析的要求,需要消除重複的記錄值。這時候就需要用到 dist...

陣列去重複

最近在寫demo的時候新學了一招 陣列去重複的方法 思路 利用json特性。1 建立乙個空json,通過對key的檢索 獲得json中 key 值 json arr i 2 對該值取反 json arr i 說明該值不存在。3 這樣我們可以對其賦值,json arr i true 這裡賦什麼值無所謂...