对比SQL两表某字段如果相同就修改其中一表数据问题2

对比数据库中TABLE1表“NO”字段和TABLE2表“编号”字段,如果相同且TABLE1“下达金额”为0就将TABLE1表对应“可用余额”字段数据剪切到“下达金额”字段... 对比数据库中TABLE1表“NO”字段和TABLE2表“编号”字段,如果相同且TABLE1“下达金额”为0就将TABLE1表对应“可用余额”字段数据剪切到“下达金额”字段。 展开
 我来答
quziguang

2009-08-18 · TA获得超过3481个赞
知道大有可为答主
回答量:4965
采纳率:84%
帮助的人:946万
展开全部
update table1
set table1.下达金额=table1.可用余额
where exists (select 1 from table2 where table2.编号=table1.NO) and table1.下达金额=0
loveyurui
2009-08-18 · TA获得超过6556个赞
知道大有可为答主
回答量:2892
采纳率:33%
帮助的人:988万
展开全部
oracle 10g:
数据:
sql@kokooa>select * from test022;

ID PRICE1 PRICE2
---------- ---------- ----------
1 100 100
2 200 0
3 300 40

sql@kokooa>select * from test023;

ID
----------
2
3

测试:
sql@kokooa>update test022 a set a.price2=a.price1
2 where a.id in (select b.id from test023 b) and a.price2=0;

1 row updated.

sql@kokooa>select * from test022;

ID PRICE1 PRICE2
---------- ---------- ----------
1 100 100
2 200 200
3 300 40

满足你的要求吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式