Почему бы вам не попробовать update
таблицу, используя where
?В утверждении select
вашего вопроса вы можете объявить Column1
, Column2
и Column3
как NULL
, а с помощью двух операторов update
изменить значения.
С "только" тремя столбцамив зависимости от того же оператора case
приведенный ниже код не сильно экономит набор текста (вероятно, время выполнения ..?), но это удобно, когда у вас больше 3 ...
UPDATE MyTable
SET Column1 = lm.name,
Column2 = '3',
Column3 = 'True'
WHERE lm.Id IN ('1','2','3')
UPDATE MyTable
SET Column1 = lm.Desc,
Column2 = '1',
Column3 = 'False'
WHERE lm.Id NOT IN ('1','2','3')