Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 update + select ?  [new]
raziel.kdm
Member

Откуда:
Сообщений: 50
Всем доброго времени суток!
Подскажите пожалуйста способ решения вот такой штуки:
есть таблица1
+

Картинка с другого сайта.

и таблица2
+

Картинка с другого сайта.


Нужно выбрать все записи из таблицы 1, найти соответствия в таблице2 (где col1=col3 и т.п.), а потом проставить id2 в таблице1 в поле tbl2_id2

Пните в верном направлении.

Спасибо!
15 апр 15, 01:39    [17516066]     Ответить | Цитировать Сообщить модератору
 Re: update + select ?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31949
raziel.kdm
Нужно выбрать все записи из таблицы 1, найти соответствия в таблице2 (где col1=col3 и т.п.), а потом проставить id2 в таблице1 в поле tbl2_id2

Пните в верном направлении.
Все UPDATE являются по сути SELECTами, которые выбирают данные, и дальше уже обновляют данные на основе этих выборок. Думайте и пишите всегда с осознанием этого.

Начинаете с селекта, проверяете правильность данных:
SELECT t1.id2, t2.id2, *
FROM таблица1 as t1
    JOIN таблица2 as t2
        ON t2.col1 = t2.col3

И потом меняете его на апдэйт:
UPDATE t1
SET t1.id2 = t2.id2
FROM таблица1 as t1
    JOIN таблица2 as t2
        ON t2.col1 = t2.col3
15 апр 15, 02:02    [17516105]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить