一个update语句,请大家看看

beibei4long 2003-10-17 01:42:41
update RECVLIST
SET CheckStatus='1'
where
BossSN in (
select BossSN
from TRANSFER)
and RECVFEE=TRANSFER.TransferAmount
from RECVLIST,TRANSFER
where RECVLIST.BossSN=TRANSFER.BossSN

我的目的是把 recvlist 表符合如下条件的 checkstatus 字段 设为 1:
他的 BossSN 在表 transfer 中存在,
并且 他们对应的 钱数相等
上面的代码有错误,该怎么改呢?
谢谢大家!
...全文
21 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Oracle10g 2004-02-25
  • 打赏
  • 举报
回复
初学 ORACLE 有很多地方不明白,请教个问题:
TableA 表的字段: Num Number(5),Name VarChar(20)

TableB 表的字段: Num Number(5),Name VarChar(20),IsOld Number(1) Default 0

用 SQL 2000 的描述方法是:
Update B
set B.Name = A.Name,B.IsOld = 0
from TableA A,TableB B
where A.Num = B.Num and B.IsOld = 1;
在 ORACLE 中怎实现?
podded 2003-10-19
  • 打赏
  • 举报
回复
update RECVLIST a set CheckStatus='1'
where a.BossSN in(
select b.BossSN from a,TRSNSFER b
where a.BossSN=b.BossSN
and a.RECVFEE=b.TransferAmount);
Nickle_Final 2003-10-19
  • 打赏
  • 举报
回复
你的语句是有问题的,你看where后面怎么还有from,where?
update RECVLIST
SET CheckStatus='1'
where
BossSN in (
select BossSN
from TRANSFER
)
and RECVFEE=TRANSFER.TransferAmount
from RECVLIST,TRANSFER
~~~~~~~~~~~~~~~~~~~~~~~~~~
where RECVLIST.BossSN=TRANSFER.BossSN
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
jiezhi 2003-10-17
  • 打赏
  • 举报
回复
update
...
col1=(select ... from a,b where ...)
where exist (select 1 from a,b where ....)
jiezhi 2003-10-17
  • 打赏
  • 举报
回复
update ... from
----->
update ... where exist ...

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧