1. 程式人生 > >Mysql資料庫查詢重複資料

Mysql資料庫查詢重複資料

   今天查詢一個表中的重複資料(表中資料1萬6左右),用了兩種方法,查詢結果實在讓人驚訝

SELECT * from tab1 where CompanyName in( SELECT companyname from tab1 GROUP BY CompanyName HAVING COUNT(*)>1);-- 129.433ms

SELECT * from tab1 INNER join  ( SELECT companyname from tab1 GROUP BY CompanyName HAVING COUNT(*)>1) as tab2 USING(CompanyName);-- 0.482ms

  所以建議大家查詢資料時,如果想效能高一點的話,儘量少用in, like '%' 等,能用表連線時,儘量不要用in,效率會很低,如果表中資料量很大,可以建立索引,或多重索引進行查

詢,效率會有明顯提高。