首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

求一条SQL解决办法

2012-01-06 
求一条SQL假设现在有一张表A,字段为NO,a、b,里面有2条记录(NO分别为1和2),我现在想只用一句sql实现如下的功

求一条SQL
假设现在有一张表A,字段为NO,a、b,里面有2条记录(NO分别为1和2),我现在想只用一句sql实现如下的功能:
把NO为1和2的这2条记录的a字段都更新为“AA”,只更新NO为1的记录的b字段为“BB”,NO2记录的b字段不变。

请问可以吗?

[解决办法]
update t set a = 'AA', b = decode(no,1,'BB',b);
[解决办法]
update A set A = 'AA',b = decode(no,1,'BB',b);
commit;
[解决办法]

SQL code
SQL> create table ta (no number,a varchar(20),b varchar(20));表已创建。SQL> insert into ta values(1,'gg','mm');已创建 1 行。SQL> insert into ta values(2,'dd','mm');已创建 1 行。SQL> select * from ta;        NO A                    B---------- -------------------- --------------------         1 gg                   mm         2 dd                   mmSQL> update ta set a='AA',b=(decode(ta.no,1,'BB',ta.b));已更新2行。SQL> commit;提交完成。SQL> select * from ta;        NO A                    B---------- -------------------- --------------------         1 AA                   BB         2 AA                   mm 

热点排行