You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle SUM函数与FLAG列更新:双表关联计算并更新RESULT1表

CREATE TABLE TABLE2_LINES (NAMES VARCHAR2(12), LINE_NO NUMBER, UNITS NUMBER(18,4), CODE VARCHAR2(4));

INSERT INTO TABLE2_LINES VALUES ('JOHN',1,1,'101');
INSERT INTO TABLE2_LINES VALUES ('JOHN',2,1,'202');
INSERT INTO TABLE2_LINES VALUES ('JOHN',3,1,'180');
INSERT INTO TABLE2_LINES VALUES ('JOHN',4,2,'300');

INSERT INTO TABLE2_LINES VALUES ('RYAN',1,2,'180');
INSERT INTO TABLE2_LINES VALUES ('RYAN',2,1,'180');
INSERT INTO TABLE2_LINES VALUES ('RYAN',3,1,'500');

INSERT INTO TABLE2_LINES VALUES ('OLAN',1,1,'301');

INSERT INTO TABLE2_LINES VALUES ('TONY',1,1,'201');
COMMIT;

CREATE TABLE TABLE4_CODES (CD_NM VARCHAR2(12), B_CODE VARCHAR2(4), E_CODE VARCHAR2(4));

INSERT INTO TABLE4_CODES VALUES ('CODELIST','100','101');
INSERT INTO TABLE4_CODES VALUES ('CODELIST','180','180');
INSERT INTO TABLE4_CODES VALUES ('CODELIST','200','219');

INSERT INTO TABLE4_CODES VALUES ('EXCODELIST','180','180');
COMMIT;

CREATE TABLE RESULT1 (NAMES VARCHAR2(12), TOT_UNITS NUMBER, FLAG VARCHAR2(2));
COMMIT;

案例说明

  • 案例1:JOHN:存在符合条件的代码101、202、180(这些代码存在于TABLE4_CODES表CD_NM为CODELIST的记录中),除180外还有其他符合条件的代码,因此SUM(UNITS)为3,FLAG设为O。
  • 案例2:RYAN:仅存在唯一符合条件的代码180(该代码存在于TABLE4_CODES表CD_NM为EXCODELIST的记录中,需查询EXCODELIST而非CODELIST),因此SUM(UNITS)为3,FLAG设为N。
  • 案例3:OLAN:无符合条件的代码,无需处理。
  • 案例4:TONY:存在符合条件的代码201(该代码存在于TABLE4_CODES表CD_NM为CODELIST的记录中),但无180,因此SUM(UNITS)为1,FLAG设为N。

计算规则

  • 若用户拥有多个符合条件的代码且包含180,需先查询TABLE4_CODES表中CD_NM为CODELIST的记录,再进行求和计算(例如JOHN)。
  • 若用户拥有单个/多个符合条件的代码但不包含180,需先查询TABLE4_CODES表中CD_NM为CODELIST的记录,再进行求和计算(例如TONY)。
  • 若用户仅拥有唯一符合条件的代码180,需先查询TABLE4_CODES表中CD_NM为EXCODELIST的记录,再进行求和计算(例如RYAN)。

预期输出

需将计算结果写入RESULT1表,预期结果如下:

NAMES    TOT_UNITS       FLAG
-----------------------------
JOHN      3               O
RYAN      3               N 
TONY      1               O

内容的提问来源于stack exchange,提问作者Johnbsdk10

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 11:25:17