Removing Duplicates by Adding an Index
mysql>
mysql>
mysql> CREATE TABLE cat_mailing
-> (
-> last_name CHAR(40) NOT NULL,
-> first_name CHAR(40) NOT NULL,
-> street CHAR(40) NOT NULL
-> );
Query OK, 0 rows affected (0.01 sec)
mysql>
mysql> INSERT INTO cat_mailing (first_name, last_name, street)
-> VALUES
-> ('Jim','Isaacson','515 Fordam St., Apt. 917'),
-> ('Wallace','Baxter','57 3rd Ave.'),
-> ('Taylor','McTavish','432 River Run'),
-> ('Marlene','Pinter','9 Sunset Trail'),
-> ('WALLACE','BAXTER','57 3rd Ave.'),
-> ('Bartholomew','Brown','432 River Run'),
-> ('Marlene','Pinter','9 Sunset Trail'),
-> ('Wallace','Baxter','57 3rd Ave., Apt 102')
-> ;
Query OK, 8 rows affected (0.00 sec)
Records: 8 Duplicates: 0 Warnings: 0
mysql>
mysql> SELECT * FROM cat_mailing;
+-----------+-------------+--------------------------+
| last_name | first_name | street |
+-----------+-------------+--------------------------+
| Isaacson | Jim | 515 Fordam St., Apt. 917 |
| Baxter | Wallace | 57 3rd Ave. |
| McTavish | Taylor | 432 River Run |
| Pinter | Marlene | 9 Sunset Trail |
| BAXTER | WALLACE | 57 3rd Ave. |
| Brown | Bartholomew | 432 River Run |
| Pinter | Marlene | 9 Sunset Trail |
| Baxter | Wallace | 57 3rd Ave., Apt 102 |
+-----------+-------------+--------------------------+
8 rows in set (0.00 sec)
mysql> SELECT * FROM cat_mailing ORDER BY last_name, first_name;
+-----------+-------------+--------------------------+
| last_name | first_name | street |
+-----------+-------------+--------------------------+
| Baxter | Wallace | 57 3rd Ave. |
| BAXTER | WALLACE | 57 3rd Ave. |
| Baxter | Wallace | 57 3rd Ave., Apt 102 |
| Brown | Bartholomew | 432 River Run |
| Isaacson | Jim | 515 Fordam St., Apt. 917 |
| McTavish | Taylor | 432 River Run |
| Pinter | Marlene | 9 Sunset Trail |
| Pinter | Marlene | 9 Sunset Trail |
+-----------+-------------+--------------------------+
8 rows in set (0.00 sec)
mysql>
mysql> ALTER IGNORE TABLE cat_mailing
-> ADD PRIMARY KEY (last_name, first_name);
Query OK, 8 rows affected (0.02 sec)
Records: 8 Duplicates: 3 Warnings: 0
mysql>
mysql> SELECT * FROM cat_mailing ORDER BY last_name, first_name;
+-----------+-------------+--------------------------+
| last_name | first_name | street |
+-----------+-------------+--------------------------+
| Baxter | Wallace | 57 3rd Ave. |
| Brown | Bartholomew | 432 River Run |
| Isaacson | Jim | 515 Fordam St., Apt. 917 |
| McTavish | Taylor | 432 River Run |
| Pinter | Marlene | 9 Sunset Trail |
+-----------+-------------+--------------------------+
5 rows in set (0.00 sec)
mysql>
mysql> drop table cat_mailing;
Query OK, 0 rows affected (0.00 sec)
Related examples in the same category