Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
noobsaibot Member Откуда: Сообщений: 4 |
Хотел обновить данные с таблицы 1 столбца т1(тип DATE) с таблицы т2 столбца т2(тип varchar), который имеет формат 01-dd/yy-02/MM. update Table1 set t1=cast (tDate as date) from (select SUBSTRING('20'+ Table2.t2,1,4)+'-'+ SUBSTRING(Table2.t2,10,2)+ '-'+ SUBSTRING(Table2.t2,7,2) as tDate FROM Table2 left join Table1 on Table2.ID= Table1.ID where Table1.RowID='838296A4-8935-4B61-A9D6-24FBB297785F' and Table2.CardTypeID = '001F99FD-5BF3-0679-9B6F-455767AF72B5' and Table2.t2 LIKE '__-__/__/__-__') as dsad после выполнения этого запроса у меня в всем значениям столбце Table1.t1 присвоилось одно и тоже значение равное первому значению из столбца t2, таблицы Table2. Что я не так написал? Сообщение было отредактировано: 9 ноя 17, 17:11 |
9 ноя 17, 17:07 [20940833] Ответить | Цитировать Сообщить модератору |
Cammomile Member Откуда: Сообщений: 1214 |
Не указал условия связывания целевой таблицы и той, из которой ты забираешь данные. Тебе нужен синтаксис вида UPDATE T SET ... FROM Table T JOIN Table2 TT ... |
||
9 ноя 17, 17:11 [20940853] Ответить | Цитировать Сообщить модератору |
Гавриленко Сергей Алексеевич Member Откуда: Moscow Сообщений: 37155 |
|
|
9 ноя 17, 17:14 [20940868] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |