Я прошу прощения, что мой SQL Kung Fu не на высоте, но это кажется основной задачей, которую я не могу выполнить.
У меня есть две таблицы в Sql Server 2008
tblBoxAddress
--Адрес
--Zip
--Latitude
--Longitude
tblUpdatedDated
--Адрес
--latitude
--longitude
Я должен обновить широту и долготу tblBoxAddress с помощью лат. и долго. из tblUpdatedData путем сопоставления по адресу. Проблема в том, что tblUpdatedData.Address содержит почтовый индекс. В tblBoxAddress это разбито на два отдельных столбца.
Мне удалось заставить оператор select работать правильно
select * from tblUpdatedData t
inner join (
Select Address + ' ' + zip As 'full_address', Latitude, Longitude from tblBoxAddress) d
on d.full_address = t.Address
Однако я не могу понять, как объединить адрес и почтовый индекс tblBoxAddress в операторе обновления. Это было так далеко, как я получил:
update d
set d.Latitude = t.latitude, d.Longitude = t.longitude
FROM tblBoxAddress d inner join
tblUpdatedData t on t.Address = d.Address + ' ' + d.zip as 'full_address'
Любая помощь приветствуется.