1. 程式人生 > >mysql插入數據時,去掉重復的數據;

mysql插入數據時,去掉重復的數據;

table nor font eat pre mys tinc 一個 PE

1. 利用insert ignore into語句去重

mysql> INSERT IGNORE INTO person_tbl (last_name, first_name)
    -> VALUES( J, T);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT IGNORE INTO person_tbl (last_name, first_name)
    -> VALUES( J, T);
Query OK, 0 rows affected (0.00 sec)

2.查詢過濾重復數據

①. 利用MySQL的關鍵字DISTINCT去重

mysql> SELECT DISTINCT last_name, first_name
    -> FROM person_tbl;

②. 利用group by進行去重

mysql> SELECT last_name, first_name
    -> FROM person_tbl
    -> GROUP BY (last_name, first_name);

3. 刪除表中的重復數據

思路:先建一個臨時表,把不重復的數據數據存放在臨時表中,然後將原表刪除,再將臨時表rename成正式表

mysql> CREATE TABLE tmp SELECT
last_name, first_name, sex FROM person_tbl GROUP BY (last_name, first_name, sex); mysql> DROP TABLE person_tbl; mysql> ALTER TABLE tmp RENAME TO person_tbl;

mysql插入數據時,去掉重復的數據;