lzth.net
当前位置:首页 >> upDAtE sElECt >>

upDAtE sElECt

举例: 有两张表t1, t2 这两张表通过id字段关联。 t1 t2 id a id b 1 beijing 1 北京 2 shanghai 2 上海 3 guangzhou 3 广州 把t1表的a字段,更新为对应的t2表的b字段,可以使用以下语法 update t1 set t1.a = (select t2.b from t2 where t1.id...

同时查询更新数据不行。 使用查询结果更新数据可以 update t1 set (col1,col2)=(select r1,r2 from xxxxxxx) where xxxx

----------------------------------------- --Update 与 Select 一起的用法 --Update 通过多表来修改数据 ----------------------------------------- --参考写法1: update B1 set strNum = strNum - B2.intNum where strId in (select intId ...

他们已经说了相关的东西了 我再补充几点: 分成两类:加锁范围子句和加锁行为子句 加锁范围子句: 在select…for update之后,可以使用of子句选择对select的特定数据表进行加锁操作。默认情况下,不使用of子句表示在select所有的数据表中加锁 加...

试试这个:UPDATE 晨星基金列表 ,基金列表 SET 晨星基金列表.基金公司 = 基金列表.基金公司 WHERE 晨星基金列表.基金代码 = 基金列表.基金代码

1 update B1 set strNum = strNum - B2.intNum where strId IN (select intId from B2 where B2.intId =B1.strId ) 2 update B1 set strNum = strNum - B2.intNum from B1 INNER JOIN B2 on B2.intId=B1.strId

http://blog.csdn.net/afeiqiang/article/details/8589535 可以参考一下这篇博客

你可以将select 结果当成一个派生表与A表关联更新就可以了 类似如下 update A set 列名 = B.列名 from (select 编码,count(*)as 列名1,SUM(CASE WHEN 条件 THEN 1 ELSE 0 END) AS 列名 from c表 group by 编码) as B where A.编号 = B.编号

UPDATE 表A SET name=(SELECT id FROM 表B WHERE 表B.name=表A.name)

如果你的Select语句结果只有一个值,那么是可以的,如果是多个值,那就不行了。

网站首页 | 网站地图
All rights reserved Powered by www.lzth.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com