2007年4月30日 星期一

mysql找出資料表中重複的資料

先前撰寫進銷存、會員管理等程式時,需要檢查原有的資料庫中是否有重複性的資料,
一般都是另外寫一隻小程式,一筆一筆的向資料庫掃瞄,這種作法費時又費力,這幾天
又負責一個會員管理的系統,一樣需要先檢查是否有重複的會員帳號及一些不能重複的
資料,例如︰身份證,電子郵件等,這次嘗試只下資料庫查詢指令的方式,來找出重複
的資料,果然,除了速度快,花的時間也少,幾十萬筆的資料,不消五秒鍾就查詢完畢
,將重複的資料查出。
下面的資料庫查詢語法相容於MySQL、PostgreSQL、SqlServer(含2000及2005二版),全
部都在三種資料庫中試驗過。

SELECT username,COUNT(*)/*重複出現的次數*/ FROM member GROUP BY username HAVING COUNT(*) > 1 /*列出重複出現一次以上的資料*/

短短的一句SQL指令,就可以省下好幾個小時的時間,呵呵
有需求的同好就拿去用吧

http://tw.myblog.yahoo.com/jw!v9EKjxOXCkSQzfYe5uE-/

【下列文章您可能也有興趣】

沒有留言: