Пример, который вы приводите, выглядит как старый добрый utf8-over-latin1. Вы можете быстро попробовать запрос вроде:
select convert(convert(the_problem_column using binary) using utf8)
чтобы выяснить, устраняет ли это проблему.
Преобразование кодирования по этим линиям должно работать до тех пор, пока все ваши данные прошли одну и ту же последовательность преобразований кодирования, и пока ни одно из этих преобразований не было с потерями - вы просто обращаете эффект некоторых из этих преобразований вспять ,
Если вы не можете полагаться на данные, прошедшие тот же набор преобразований кодирования, то это вопрос сканирования данных на наличие мусорных символов и замены их на предполагаемый символ, что рискованно, поскольку зависит от чьего-либо определение того, что было мусором и что было задумано.
Некоторое обсуждение в этом ответе о том, как вы можете выполнить такой ремонт, используя сценарии ручной работы. Я не знаю инструмента, который знает весь спектр естественных языков и кодировок, который использует более продвинутый статистический подход для выявления возможных проблем и рекомендует точное преобразование для решения проблемы - что-то подобное было бы полезно.