私は次のSQLを持っています:
UPDATE TableA
SET first_name = 'AAA',
last_name = 'BBB',
address1 = '123',
address2 = 'Fake St.,',
phone = '1234567',
id = '11223344'
nullでない場合にのみ各列を更新するには、何を使用すればよいですか?
私は次のSQLを持っています:
UPDATE TableA
SET first_name = 'AAA',
last_name = 'BBB',
address1 = '123',
address2 = 'Fake St.,',
phone = '1234567',
id = '11223344'
nullでない場合にのみ各列を更新するには、何を使用すればよいですか?
update tableA
set first_name = case when first_name is null then null else 'aaa' end,
last_name = case when last_name is null then null else 'bbb' end,
...
あまり冗長ではない(そして読みにくい)もう1つのアプローチ:
UPDATE TableA
SET first_name = left( 'AAA' + first_name, 3 ) ,
last_name = left( 'BBB' + last_name, 3 ) ,
address1 = left( '123' + address1, 3 ) ,
address2 = left( 'Fake St.,' + address2, len( 'Fake St.,' ) ) ,
...
この例では、ISNULL関数を使用します。
UPDATE TableA
SET first_name = ISNULL(first_name, NULL, 'AAA'),
last_name = ISNULL(last_name, NULL, 'BBB'),
(...)
GO