oracle - merge实例二 同步代理人
Posted wlliac
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle - merge实例二 同步代理人相关的知识,希望对你有一定的参考价值。
MERGE INTO
TBL_MEMBER TM -- 网站会员注册信息表
USING
(
SELECT
CHA_CDE,
CHA_NME,
CHA_ABBR,
DPT_CDE,
STATUS_CHA,
AUTH_FLAG,
CHA_MRK,
CHA_CLS,
0 || SUBSTR(CHA_TYPE,0,1) CTYPE,
C_CERTF_NO,
C_TEL,
C_MAIL,
C_ZIP_CDE,
C_ADDR,
CERTER_TYPE,
CREATOR,
CREATOR_DATE,
MODIFIER,
CHA_ADB_TM,
CHA_LIC_END_TM,
SLS_CDE,
C_LICENSE,
QLFT_NO,
AGENCY_DPT_CDE,
SALES_CHANNEL_CODE
FROM
TBL_AGENT
WHERE SUBSTR(DPT_CDE,0,2) IN (‘72‘,‘74‘)
) TS
ON
(
TM.USER_NAME = TS.CHA_CDE -- 渠道编码
AND TM.DEPT_CODE = TS.DPT_CDE -- 机构代码
)
WHEN MATCHED THEN
UPDATE
SET
TM.NAME = TS.CHA_NME, -- 渠道名称
TM.CERTIFICATE_TYPE = TS.CTYPE, -- 证件类型
TM.CERTIFICATE_NO = TS.C_CERTF_NO, -- 证件号码
TM.USED_FLAG = TS.STATUS_CHA, -- 是否有效 0失效;1有效
TM.ENABLED_FLAG = TS.AUTH_FLAG, -- 是否激活
TM.PASSWORD_MODIFIED_DATE = SYSDATE
WHEN NOT MATCHED THEN
INSERT
(
TM.ID,
TM.USER_NAME,
TM.PASSWORD,
TM.RANDOM_STR,
TM.DEPT_CODE,
TM.CERTIFICATE_TYPE, -- 证件类型
TM.CERTIFICATE_NO, -- 证件号码
TM.MOBILE_PHONE,
TM.ENABLED_FLAG,
TM.PASSWORD_MODIFIED_DATE,
TM.USED_FLAG, -- 是否可用 0-无效 1-有效
TM.MEMBER_TYPE, -- 内部用户类别 0:业务员
TM.ROLE_TYPE_CODE, -- 角色类型 2:内部用户
TM.MEMBER_FLAG -- 用户标识 99:诉责险
)
VALUES
(
SEQ_TBL_MEMBER_ID.NEXTVAL,
TS.CHA_NME, -- 渠道名称
‘56a5aa0561ddd3b88b924315043cf6fb‘, -- 初始密码
‘6Umt‘, -- 盐码
TS.DPT_CDE, -- 机构代码
TS.CTYPE, -- 证件类型
TS.C_CERTF_NO, -- 证件号码
TS.C_TEL,
TS.AUTH_FLAG,
SYSDATE,
TS.STATUS_CHA,
‘0‘,
‘2‘,
‘99‘
);
以上是关于oracle - merge实例二 同步代理人的主要内容,如果未能解决你的问题,请参考以下文章