mysql怎樣查詢重複字段

WBOY
發布: 2022-01-12 10:17:25
原創
23742 人瀏覽過

在mysql中,可以利用count()函數來查詢重複字段,該函數能夠傳回指定條件的結果,語法為「 SELECT 字段值COUNT(*) as count FROM 表名GROUP BY 字段值having count>1;」。

mysql怎樣查詢重複字段

本教學操作環境:windows10系統、mysql8.0.22版本、Dell G3電腦。

mysql怎樣查詢重複欄位

範例  accountinfo 資料表資料如下:

mysql怎樣查詢重複字段

#場景一   單一欄位重複資料查找& 去重

我們要把上面這個表中單一欄位account欄位相同的資料找出來。

想法分三步驟簡述:

第一步

要找出重複數據,我們首先想到的就是,既然是重複,那麼數量就是大於1  就算是重複。那就是 count 函數 。

因為我們要排查的是 單一 欄位account ,那麼就是需要按照 account 欄位 維度 去分組。  那就是 group by 函數。

那麼我們第一步寫出來的mysql 語句是:

 SELECT account ,COUNT(account) as count FROM accountinfo GROUP BY account;
登入後複製

查詢結果如下:

mysql怎樣查詢重複字段

第二步 

沒錯,如我們所想,count大於1的就是account為A  和B 的資料。

那麼我們稍作篩選,只把count大於1的資料的account  找出來。

 第二步,利用having 拼接篩選條件,寫出來的mysql 語句是:

 SELECT account FROM accountinfo GROUP BY account HAVING COUNT(account) > 1;
登入後複製

查詢結果如下:

mysql怎樣查詢重複字段

 第三步驟

重複的account資料A B 都找出來了,接下來我們只需要把account為A 和B 的其他資料都一起查詢出來。

那就是利用第二步驟查出來的資料做為子查詢條件,使用 IN 函數。

第三步驟寫出來的mysql 語句是:

 SELECT * FROM  accountinfo WHERE account IN
 (
 SELECT account FROM accountinfo GROUP BY account HAVING COUNT(account) > 1
 );
登入後複製

查詢結果如下:

mysql怎樣查詢重複字段

可以看到重複的資料都被我們篩選出來了。

推薦學習:mysql影片教學

#

以上是mysql怎樣查詢重複字段的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!