Sometimes it's just not wise to work on a database after midnight when your senses are not fully alert!
Anyhow, I don't know how I did this but I inserted 7,000+ records for a single content type (restaurants) half of which were duplicate entries.
After realizing that I can't perform a subquery against the same table to delete the duplicates I quickly turned to Temporary Tables (TT). The reason I used a TT was for the simple fact that I was
temporarily using it and I was the
only person who could use it. Additionally, once I was done fixing the issue I didn't want to have to worry about forgetting to drop the TT (keep in mind it is late, I'll forget anything). TT's are only accessible during a single db connection and drops when the connection is dropped reducing chances to pollute the db with garbage.
Some may be wondering, why didn't you just create a new table with a subquery selecting the distinct records to construct and populate a new table and then rename it. The reason being is that the 'records' table contains multiple content types with their own set of data and I didn't want to take any chances on messing them up.
So using a subquery
SELECT DISTINCT tablefields FROM tablename WHERE criteria to select content type records I created a new TT along with the matching records.
CREATE TEMPORARY TABLE restaurants_temp
SELECT DISTINCT title,address,city,zipcode,state FROM records where datatype = 1;
Next, I dropped all of the original records from the 'records' table.
DELETE FROM records where datatype = 1;
Finally, I inserted all of the records from the 'restaurants_temp' table into the 'records' table via use of a subquery.
INSERT INTO records (title,address,city,zipcode,state)
SELECT title,address,city,zipcode,state FROM restaurants_temp;
Close connection and TT is dropped. Don't have to worry about the db being junked up with garbage.