У меня есть две таблицы, как это:Объединение таблиц по значениям, которые не соответствуют
Сводная таблица
ID int
CityName Varchar(200)
PopulationCount int
Таблица данных
ID int
CityName Varchar(200)
PopulationCount int
Longitude float
Latitude float
Сводная таблица 800 строк и DataTable имеет 800 000 строк. Каждое CityName в Сводной таблице содержится в таблице данных хотя бы один раз (и нередко несколько раз). Мне нужно создать новую таблицу для хранения каждого из 800 городов из сводной таблицы и их соответствующих широт/долгот из таблицы данных.
Проблема: поле CityName в сводной таблице не является точным совпадением с CityName в таблице данных. Есть небольшие отличия.
Sample Data:
Summary Table, CityName: Yarmouth (N.S.)
Data Table, CityName: Yarmouth
Шаблон в выборочных данных выше, не всегда справедливо и то есть разница не всегда кронштейн поэтому я не вижу регулярные выражения и т.д. работает. Я предполагаю, что может существовать файл contains() или как% CityName%, но я не знаю, как правильно их реализовать.
Любая помощь будет принята с благодарностью ...
Хорошо, поэтому условие для JOIN - одна из проблем, но вы также сказали, что в городе может быть более одной записи в таблице данных. Если да, то какую широту и долготу вы хотите разместить в сводной таблице ?, как вы выбираете одну запись по другой? – Lamak
Что вы ожидаете, если в таблице данных для данного города есть несколько * разных * lat/longs? –
OK Здесь вы должны отступить и посмотреть на свой дизайн, который по своей сути неработоспособный. Ибо на вещи посмотреть, сколько городов по имени Колумб находятся в разных местах в США. Город не является уникальным идентификатором, даже если у вас есть правильное имя. Следующее название города должно храниться в одной и только одной таблице, а cityid должен быть во всех связанных таблицах. Если вы установили это с самого начала с правильными отношениями и FKS, у вас не возникло бы этой проблемы. Для этого нет никаких оснований, кроме как исправить вашу модель данных и хранить данные таким образом, чтобы их можно было успешно запросить. – HLGEM