oracle update left join查询
2024-10-17 07:29:39
对于有的更新语句,要更新的表可能条件不够,需要用到left join关联其他表,
但是不能直接关联,否则报错:错误如下:
update imim_gireqbillitems gi
left join imim_gireqbills g on g.guid=gi.guid
set gi.quantity=
(
select sum(gi2.quantity)
from imim_gireqbillitems gi2
left join imim_gireqbills g2 on g2.guid=gi2.guid
where g2.ismerge='' and g2.mergeid=g.mergeid
)
where g.ismerge='' and exists
(
select 1
from imim_gireqbillitems gi2
left join imim_gireqbills g2 on g2.guid=gi2.guid
where g2.ismerge='' and g2.mergeid=g.mergeid
)
正确实例:
update
(
select * from imim_gireqbillitems gi
left join imim_gireqbills g on g.guid=gi.guid
where g.ismerge=''
) T
set T.quantity=
(
select sum(gi2.quantity)
from imim_gireqbillitems gi2
left join imim_gireqbills g2 on g2.guid=gi2.guid
where g2.ismerge='' and g2.mergeid=T.mergeid
)
where exists
(
select 1
from imim_gireqbillitems gi2
left join imim_gireqbills g2 on g2.guid=gi2.guid
where g2.ismerge='' and g2.mergeid=T.mergeid
)
最新文章
- 用node-webkit把web应用打包成桌面应用
- mac 下卸载mysql的方法
- String.Format将人民币符号改成美元符号{0:C}
- 【转】LokiJS:纯JavaScript实现的轻量级数据库
- jexus ASP.NET开发注意项1
- Eclipse程序员要掌握的常用快捷键
- RedHat版的linux安装yum源及redis
- android 学习随笔三(测试与单元测试框架)
- 学习Mongodb(一)
- 7.JAVA_SE复习(文件)
- VB.NET中使用代表对方法异步调用
- AngularJS中Model和Controller传值问题
- Jenkins编辑或替换All view
- python学习笔记——(三)文件操作
- 吴裕雄 python 机器学习——线性判断分析LinearDiscriminantAnalysis
- 10--Python入门--异常处理
- log4j2使用入门(二)——与不同日志框架的适配
- ecplise问题总结
- 学习笔记29—Linux基础
- FileReader读取文件详解
热门文章
- centos7 crontab管理
- [Lydsy1806月赛] 最长公共子序列
- 【数论】【二次剩余】【map】hdu6128 Inverse of sum
- 【dijkstra】【次短路】【fread】hdu6181 Two Paths
- 【推导】【贪心】XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem D. Clones and Treasures
- JS对象和数组
- #iOS问题记录# UITextview富文本链接,禁止长按事件
- 常见Linux版本
- AS3.0 效率优化
- Enyim Memached 客户端 执行GET 总是返回NULL