Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Remove duplicate record from table

Tags:

mysql

I have a table in MySQL named ZipCode and its fields are: id, zipcode, city, state. It has some duplicate records; some zipcode are showing two times I want to remove all that zipcodes that are coming twice; each zipcode must be stored just once. How can I make it correct?

like image 690
Sharma Mudeet Avatar asked Feb 17 '26 13:02

Sharma Mudeet


1 Answers

-- remove duplicates

DELETE z1
FROM ZipCode z1, ZipCode z2
WHERE z1.zipcode = z2.zipcode AND z2.id < z1.id;

-- add a primary key

ALTER TABLE ZipCode ADD PRIMARY KEY (zipcode);

-- or a unique key

ALTER TABLE ZipCode ADD UNIQUE INDEX zipcode_unique (zipcode);
like image 61
Arnaud Le Blanc Avatar answered Feb 19 '26 02:02

Arnaud Le Blanc