Запрос на обновление MS SQL

SQL во всех проявлениях - от ANSI-92 до TSQL.

Модераторы: Yurich, Absurd

Ответить
Dr_Grizzly
Сообщения: 406
Зарегистрирован: 13 сен 2004, 12:05
Откуда: Курган
Контактная информация:

15 мар 2012, 08:17

Добрый день! Пытаюсь обновить несколько таблиц, и не получается составить подобный запрос
На аксесе было бы так:

Код: Выделить всё

Update maintab,xtab, ytab
set xtab.name=maintab.name, ytab.name=maintab.name
where maintab.key=xtab.mkey and maintab.key=ytab.mkey 
На MS SQL же такое не катит... просто значение в поле в одну таблицу получается запихнуть, но взять это значение из другой таблицы - не выходит... Подскажите правильный синтаксис плиз
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто! ;) Да! Кстати! Ctrl+V реально вставляет!!! ХDD
Аватара пользователя
Игорь Акопян
Сообщения: 1419
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

19 мар 2012, 13:29

а надо именно одним запросом две таблицы обновить?
Изображение
Dr_Grizzly
Сообщения: 406
Зарегистрирован: 13 сен 2004, 12:05
Откуда: Курган
Контактная информация:

28 мар 2012, 20:51

Да мне любой вариант пойдет ))) главное чтоб не в ручную ))))))))))
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто! ;) Да! Кстати! Ctrl+V реально вставляет!!! ХDD
Аватара пользователя
Игорь Акопян
Сообщения: 1419
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

29 мар 2012, 14:34

что-то типа
[syntax='sql']
Update x
set x.name=m.name
from
xtab x
inner join maintab m on m.key=x.mkey
[/syntax]
Изображение
Ответить