今天同事问了一个问题,说怎么有选择性的update一个表的某个字段,开始我往复杂的方向去想了,后来才发现其实case就能实现这样的一个功能,下面简单的演示一下:
可以看到,上面的例子中有选择性的更新了a字段,case还有很多有用的操作,也可以写进select中~~
SQL> create table test_update(a int); Table created. SQL> insert into test_update values(3); 1 row created. SQL> select * from test_update; A SQL> update test_update set a=(case when a>2 then 100 else 0 end); 1 row updated. SQL> select * from test_update; A |
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26463985/viewspace-711723/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26463985/viewspace-711723/