2012-08-27 7 views
6

で残せば、カラムは、nullでない場合、私は、次のSQLを持っている:UPDATE nullはnullを

UPDATE TableA 
SET first_name = 'AAA', 
    last_name = 'BBB', 
    address1 = '123', 
    address2 = 'Fake St.,', 
    phone = '1234567', 
    id = '11223344' 

がnullでない場合、私は唯一の更新各列に何を使うべきでしょうか?

答えて

23
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, 
... 
+4

や 'first_nameのは、未処理の場合のために、暗黙の'他null'なのでありますようend'「AAA」その後、nullでない場合。 –

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.,')) , 
    ...