ORACLE MERGER 的应有和问题

zfrandzfr zfrandzfr 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
问题收集日期:2007-10-12


测试用例
create table A1
(
A VARCHAR2(20),
B NUMBER(20,2)
);
create table A2
(
A VARCHAR2(20),
B NUMBER(20,2),
C NUMBER(20,2)
);

insert into A1 (A, B)
values ('a', 12);
insert into A1 (A, B)
values ('v', 121);
insert into A1 (A, B)
values ('d', 22);


说明:以A1来处理A2。

------没有子查询的变量的应用
declare
v1 varchar2(20);
v2 varchar2(20);
v3 number(20,2);
v4 number(20,2);
begin
v1:='a';
v2:='v';
v3:=1090;
v4:=8888;
merge into a2
using a1 tt
on (a2.a=tt.a )
when matched then
update set c=v3
when not matched then
insert (a,b,c)
values(tt.a,tt.b,v4);
end;

-------子查询的情况 变量的应用
declare
v1 varchar2(20);
v2 varchar2(20);
v3 number(20,2);
v4 number(20,2);
begin
v1:='a';
v2:='v';
v3:=1090;
v4:=8888;
merge into a2
using (select a,b,v4 as c,v3 as d from a1 where a1.a= v1 or a1.a=v2) tt
on (a2.a=tt.a )
when matched then
update set c=tt.d
when not matched then
insert (a,b,c)
values(tt.a,tt.b,tt.c);
end;


为什么以下这么用不可以呢?
declare
v1 varchar2(20);
v2 varchar2(20);
v3 number(20,2);
v4 number(20,2);
begin
v1:='a';
v2:='v';
v3:=1090;
v4:=8888;
merge into a2
using (select a,b, from a1 where a1.a= v1 or a1.a=v2) tt
on (a2.a=tt.a )
when matched then
update set c=v3
when not matched then
insert (a,b,c)
values(tt.a,tt.b,v4);
end;
...全文

相关推荐

Datastage产品开发使用指南

本指南详细阐述了每个阶段的配置、使用方法和注意事项,是学习和实践Datastage的宝贵资源,尤其对于那些涉及Oracle数据库的数据仓库项目,Datastage的高效连接和处理能力显得尤为重要。

gomiller76

ECC如何升级为 SAP S4 HANA ?.docx

五、有用的链接和资源以下是一些有用的链接和资源:* SUM工具:https://help.sap.com/doc/4698ca4ad85a4a24994b2016f366cc77/1709%20000/

liubo2100

技术转移机构如何基于数据提升项目撮合精准度?.docx

技术转移机构如何基于数据提升项目撮合精准度?

BIZKEEN

超扭滑模与快速终端滑模的永磁同步电机无感控制:理论、离散化实现与仿真研究(Simulink仿真实现)

内容概要:本文系统研究了超扭滑模控制(STSMC)与快速终端滑模控制(FTSMC)在永磁同步电机(PMSM)无感控制中的应用,重点涵盖其理论基础、离散化实现方法及Simulink仿真验证。文章深入阐述了两种高阶滑模控制策略的设计原理,利用磁链无感观测技术实现转子位置与速度的精确估计,从而省去物理传感器,有效提升了系统的可靠性与鲁棒性。同时,提供了完整的Simulink仿真模型构建方案,包括控制器设计、关键参数整定及动态响应性能分析,充分验证了所提出的方法在零速与低速工况下的卓越控制性能和有效性。; 适合人群:具备电机控制、现代控制理论基础知识及熟练掌握MATLAB/Simulink仿真技能的研究生、科研人员与工程技术人员。; 使用场景及目标:①深入理解高阶滑模控制在电机驱动系统中的设计思想与具体实现;②掌握基于滑模观测器的无感控制核心技术;③开展永磁同步电机高性能控制算法的理论研究、仿真验证与工程化探索。; 阅读建议:建议将文中详尽的理论推导与Simulink仿真模型相结合进行学习,重点关注滑模面的构建、抖振抑制策略的实施以及离散化处理的细节,有条件的研究者可进一步将算法移植到DSP等硬件平台进行实验验证,以深化对理论的理解并检验其实际应用效果。

长安程序猿

多源动态最优潮流的分布鲁棒优化方法(IEEE118节点)(Matlab代码实现)

内容概要:本文系统阐述了基于Matlab的多源动态最优潮流分布鲁棒优化方法,聚焦于IEEE118节点电力系统,旨在应对高比例可再生能源接入背景下源荷双重不确定性所带来的调度挑战。该方法深度融合分布鲁棒优化理论,通过构建能够抵御最坏情况概率分布的决策模型,有效提升了电力系统在复杂不确定性环境下的运行安全性、经济性与可靠性。研究不仅提供了完整的Matlab代码实现,便于结果复现与算法验证,还特别关注了含风电等新能源的现代电网低碳调度问题,为解决实际工程中的优化调度难题提供了强有力的理论支撑和技术工具。; 适合人群:具备电力系统分析基础和Matlab编程能力的研究生、科研人员及从事智能电网优化运行、能源系统规划等相关领域的工程技术人员。; 使用场景及目标:①研究含高比例可再生能源接入的电力系统动态最优潮流问题;②掌握分布鲁棒优化在电力系统经济调度、低碳调度中的建模思想与求解方法;③利用IEEE118标准测试系统进行算法有效性验证与性能对比分析;④基于所提供的Matlab代码进行二次开发,探索新型不确定性优化理论在电力系统中的创新应用。; 阅读建议:建议读者结合电力系统最优潮流、不确定性优化理论(特别是分布鲁棒优化)的背景知识进行学习,重点关注模型的构建逻辑、目标函数与约束条件的设计原理,以及Matlab代码的具体实现细节。在学习过程中,应动手调试代码,尝试修改系统参数(如新能源出力波动范围、负荷水平等),以观察不同场景下优化结果的变化,从而深刻理解该方法的适应性、优势及其潜在的局限性。

天天程序猿
评论 3
收藏 已收藏
分享
返回顶部
zfrandzfr
Oracle 17,133 成员 55,258 内容