Вы должны иметь возможность сделать коррелированный подзапрос для удаления данных.Найдите все строки, которые являются дубликатами, и удалите все, кроме одной с наименьшим идентификатором.Для MYSQL необходимо использовать внутреннее соединение (функциональный эквивалент EXISTS), например:
delete games from games inner join
(select min(id) minid, date, time,
hometeam_id, awayteam_id, locationcity, locationstate
from games
group by date, time, hometeam_id,
awayteam_id, locationcity, locationstate
having count(1) > 1) as duplicates
on (duplicates.date = games.date
and duplicates.time = games.time
and duplicates.hometeam_id = games.hometeam_id
and duplicates.awayteam_id = games.awayteam_id
and duplicates.locationcity = games.locationcity
and duplicates.locationstate = games.locationstate
and duplicates.minid <> games.id)
Для проверки замените delete games from games
на select * from games
.Не просто запустите удаление в вашей БД: -)