Я пытаюсь обновить столбец города в таблице a_customer_test на основе их почтового индекса.Строка SQL Update с внутренним соединением с подстрокой
ЗЕЬЕСТ работает отлично
SELECT * FROM dbo.postcodes b with(nolock)
left join a_customer a with(nolock)
on SUBSTRING (a.postcode,1,3) = SUBSTRING (b.postcode,1,3)
Но когда я применить ту же логику и запроса на обновление этого не хочет работать он будет работать, но ничего не будет обновляться.
UPDATE
a_customer_test
SET
a_customer_test.town = b.town
FROM dbo.postcodes b with(nolock)
left join a_customer a with(nolock)
on SUBSTRING (b.postcode,1,3) = SUBSTRING (a.postcode,1,3)
* Рабочая запрос *
UPDATE
a_customer_test
SET
a_customer_test.town = b.town
FROM dbo.postcodes b with(nolock)
left join a_customer_test a with(nolock)
on SUBSTRING (a.postcode,1,3) = SUBSTRING (b.postcode,1,3)
WHERE SUBSTRING (b.postcode,1,3) = SUBSTRING (a.postcode,1,3)
AND a.postcode is not null
Я хочу только обновить столбец города, когда первые 3 цифры совпадают, поэтому я использовал в качестве подстроки, поскольку это было бы намного быстрее. – user3049698
Можете ли вы попробовать добавить предложение WHERE? – Minh
Мне нужно обновить [город] разными значениями в зависимости от соответствия почтового индекса – user3049698