db2中sql语句的另外一种update语句写法

By SuperTaoer | 十二月 7, 2009
Under: 工作分享, 程序 技术 周边
Views: 699 views

一般的咱们常用的update语句结构如下:

1
UPDATE TB SET FIELDNAME='FIELDNEWVALUE' WHERE xxx;

但是今天碰到了需要更新多个字段的情况,比如需要更新10个字段,前5个字段的值来自表A,中间三个字段值来自表B,最后两个字段值来自表C,
如果要是一个一个字段的写 f=’xxx’这样太麻烦了,于是乎上网搜索,发现了另外一种写法。

1
2
3
4
5
6
7
UPDATE TB SET (field1, field2, field3, field4......)
 = 
(SELECT field1, field2, field3, field4
 FROM A
 JOIN B ON xxx
 LEFT JOIN C ON xxx
 WHERE TB.ID=A.ID [AND xxxx]);

这个sql语句的意思就有些类似insert 常用的方法了,即首先在SET关键字后面写好待更新的字段列表,然后写“=”,在“=”后可以写一个联合查询,把需要的字段按照前面的顺序进行排列,再再WHERE子句中按照一定的条件进行关联,这样,update就可以了。

差..好文!! (还没评价)
Loading ... Loading ...

Leave a Message

No Messages

No Messages

RSS feed for comments on this post. TrackBack URI

Leave a Message