2014-06-20 54 views
-1

當我嘗試創建一個測試數據庫時,我搞砸了,並且意外地複製了某個表中的所有內容。現在基本上每一個入口都有2次。有沒有簡單的方法來解決這個問題? (使用InnoDB表)SQL Entry的Duped

回答

0

使用自動遞增主鍵的另一個很好的理由。這樣,行就不會是完全重複的。

可能是最快的方法是將數據複製到另一個表,截斷第一個表,然後重新插入它:

create temporary table tmp as 
    select distinct * 
    from test; 

truncate table test; 

insert into test 
    select * 
    from tmp; 

作爲一個小提示:在幾乎所有情況下,我建議使用完整列表上的insert聲明。這是可選的一種情況。畢竟,您將所有列放在另一個表中,稍後再將它們放回。