更新Oracle语句

时间:2017-04-10 13:31:55

标签: sql oracle sql-update

我有两个字段codehouse

code                                house 

01-001-0001-0001-0001                 6
01-001-0001-0001-0002                 6 
01-001-0001-0001-0003                 6
01-001-0001-0001-0004                 6
01-001-0001-0001-****                 6

01-001-0001-0002-0001                 8
01-001-0001-0002-0002                 8
01-001-0001-0002-0003                 8
01-001-0001-0002-****                 8

如何更新house = null以获取

code                                house 

01-001-0001-0001-0001                 6
01-001-0001-0001-0002                  
01-001-0001-0001-0003                 
01-001-0001-0001-0004                 
01-001-0001-0001-****

01-001-0001-0002-0001                 8
01-001-0001-0002-0002                 
01-001-0001-0002-0003
01-001-0001-0002-****

1 个答案:

答案 0 :(得分:4)

这个怎么样:

update t
    set house = NULL
    where code not like '%-0001';

如果您只想将此作为select查询的结果:

select code,
       (case when code like '%-0001' then house end) as house
from t;