为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:8
【操作系统】:麒麟
【CPU】:16
【问题描述】*:insert时根据某字段判断已存在相同数据则不操作或者更新,类似postgresql : INSERT INTO DAM.SMART_SOURCE_LAN_S (SMART_ID,TM,VALUE) VALUES(‘0160805130’,‘2023-01-05 14:04:31’,0) ON CONFLICT (SMART_ID, TM) DO NOTHING 这种操作,达梦的sql怎么写?
你可以使用MERGE INTO进行实现,例如:
MERGE INTO SMART_SOURCE_LAN_S S
USING (SELECT ‘0160805133’ SMART_ID,‘2023-01-05 14:04:31’ TM FROM DUAL) T
ON S.SMART_ID = T.SMART_ID AND S.TM = T.TM
WHEN NOT MATCHED THEN INSERT(SMART_ID,TM,VALUE) VALUES(T.SMART_ID,T.TM,0)