【SQL】重複データの削除【SQLite】

重複データが存在した。

ツライ。

そんな重複データを削除するために、SQLを書いたのでメモ。

 

CREATE TABLE NEW_TB AS 

SELECT 
    *
FROM PLAYINFO
WHERE  SERVER_ID IS NOT NULL 
GROUP BY SERVER_ID HAVING COUNT(SERVER_ID)

UNION 
SELECT 
    *
FROM TEST1
WHERE 
    SERVER_ID IS NULL ;

ALTER TABLE TEST1 RENAME TO OLD_TB;
ALTER TABLE NEW_TB RENAME TO TEST1;

えっと、TEST1のSERVER_IDが重複してるからNEW_TBというところに

重複を覗いたテーブルを準備!

「UNION」というキーワードで、SELECT文がつなげてめっちゃ便利!

そして、TEST1をOLD_TBという名前に変更!

NEW_TBをTEST1に変更!とすれば、重複データは見事になくなります(/_;)

 

うれしいい!