Мне нужно обновить несколько столбцов в таблице с несколькими условиями.Как обновить несколько столбцов с несколькими условиями
Например, это мой запрос
update Table1
set weight= d.weight,
stateweight=d.stateweight,
overallweight=d.overallweight
from
(select * from table2)d
where table1.state=d.state and
table1.month=d.month and
table1.year=d.year
Если таблица соответствует все три столбца (государственный, месяц, год), он должен обновить только вес колонки и если она соответствует (состояние, год) он должен обновить только столбец stateweight и если она соответствует (год) он должен обновить только overallweight колонка
Примечание: я не могу написать UPDA т.е запрос для каждого состояния отдельно, поскольку его огромный select
Table1
Year Month State Weight StateWeight Overweight
2014 1 AA 0.00 0.00 0.00
2014 3 AA 0.00 0.00 0.00
2014 1 AB 0.00 0.00 0.00
2014 2 AB 0.00 0.00 0.00
2014 3 AC 0.00 0.00 0.00
2014 1 DD 0.00 0.00 0.00
Table2
Year Month State Weight StateWeight Overweight
2014 1 AA 2.20 5.00 2.22
2014 2 AA 1.70 5.00 2.22
2014 3 AA 8.30 5.00 2.22
2014 1 AB 5.80 2.11 2.22
2014 2 AB 7.40 2.11 2.22
2014 3 AB 9.10 2.11 2.22
2014 1 AC 3.42 5.14 2.22
2014 1 DD 8.88 9.00 2.22
Мой результат должен быть (My Обновлено Table1 должно быть)
Year Month State Weight StateWeight Overweight
2014 1 AA 2.20 5.00 2.22
2014 3 AA 8.30 5.00 2.22
2014 1 AB 5.80 2.11 2.22
2014 2 AB 7.40 2.11 2.22
2014 3 AC 0.00 0.00 2.22
2014 1 DD 0.00 9.00 2.22
но запрос, который вы указали, был обновлен только с избыточным столбцом, а не с другим столбцом 2 (w восемь & StateWeight)
Sry за задержку обновления он обновляет только overallweight колонку, а не другие 2 колонки были обновлены ... Просьба помочь мне ... –
Hi @SathishA, пожалуйста, вы можете обновите свой вопрос, чтобы включить определение Таблицы 1 и Таблицы 2, а также укажите некоторые примеры данных, которые будут содержаться в каждой таблице? – animateme
Привет @SathishA, я обновил свой ответ на основе дополнительной информации, которую вы предоставили. – animateme