Это было бы намного проще сделать в БД, а затем вернуть набор данных соответствующих элементов.Предполагая, что две таблицы идентичны, и вы сопоставляете только заголовок, ваш SQL будет выглядеть так:
SELECT [id], [title], [url]
FROM [Table1] t1
JOIN [Table2] t2 ON t1.[title] = t2.[title]
Затем выполните итерацию по каждой записи в наборе результатов и запишите все поля, которые вы хотите в файл.
Если вы хотите просто придерживаться SQL, вы можете запустить запрос, а затем просто сохранить исходящий файл в файл, используя инструмент запроса для вашей БД, например Management Studio
или что-то в этом роде.
РЕДАКТИРОВАТЬ: Исходя из «схожего» требования, вы можете использовать команду SOUNDEX
в SQL для сравнения, если они звучат одинаково. См. MSDN для получения дополнительной информации о команде SOUNDEX
.
РЕДАКТИРОВАТЬ 2: Чтобы добавить дополнительную информацию относительно добавленных вами требований: В SQL это аналогичное требование можетбыть труднымВы можете разбить заголовок на слова, а затем сохранить их во временную таблицу и посмотреть, сколько совпадений, а затем на основе порога для назначения условия совпадения.Похоже, что ваши данные также хранят URL, так что вы можете также использовать его и проверить базовый URL, чтобы увидеть, совпадают ли они в первую очередь, прежде чем выполнять взвешенную проверку заголовка.Мне не совсем ясно, какой результат вы ищете, кроме названия.
Это действительно не очень простая задача, и я думаю, что кто-то сможет просто дать вам ответ.Я уверен, что профессор в университете работает над этой проблемой.