在ORACLE联多表更新一表的问题!

xingxiaowei 2003-03-31 03:48:38
Update T_Student
set PaperType=T_Tif.PaperType,F_Tif_url=T_Tif.F_FilePath,B_Tif_url=T_Tif.B_FilePath,Img_url=T_Area.Distribute_dir
from T_Student,T_Tif,T_Area
where T_Tif.BatchId=:Batch and T_Student.zkzh=T_Tif.zkzh and T_Student.Area_id=T_Area.Area_id;
这是我在SQLSEVER中写的语句,可现在需要在ORACLE中使用。请问该一句该怎么重写呢?ORACLE中Update后面不支持跟from!
请各位大虾指教。谢谢!
...全文
271 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lastdrop 2003-03-31
  • 打赏
  • 举报
回复
再加一个where条件
Update T_Student
set (PaperType,F_Tif_url,B_Tif_url,Img_url) =
( select T_Tif.PaperType,
T_Tif.F_FilePath,
T_Tif.B_FilePath,
T_Area.Distribute_dir
from T_Tif,T_Area
where T_Tif.BatchId=:Batch and T_Student.zkzh=T_Tif.zkzh and T_Student.Area_id=T_Area.Area_id )
where exists ( select 1 from T_Tif where T_Student.zkzh=T_Tif.zkzh );
xingxiaowei 2003-03-31
  • 打赏
  • 举报
回复
对不起,我没说清楚。
更新T_Student表是有条件的,要求T_Student.zkzh=T_Tif.zkzh.
你写的语句有点问题也。
xingxiaowei 2003-03-31
  • 打赏
  • 举报
回复
多谢!:)
bzszp 2003-03-31
  • 打赏
  • 举报
回复
Update T_Student
set (PaperType,F_Tif_url,B_Tif_url,Img_url)=
(select
T_Tif.PaperType,
T_Tif.F_FilePath,
T_Tif.B_FilePath,
T_Area.Distribute_dir
from T_Tif,T_Area
where T_Tif.BatchId=:Batch and T_Student.zkzh=T_Tif.zkzh and T_Student.Area_id=T_Area.Area_id);

17,377

社区成员

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

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