db2中sql语句的另外一种update语句写法
一般的咱们常用的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就可以了。
Leave a Message
No Messages
No Messages
RSS feed for comments on this post. TrackBack URI
我的简介: 谁说tmd巨蟹座傻来的?我就是tmd巨蟹里边儿最聪明的!!!