我需要插入不重复的值。。。此“与自引用合并”未按预期工作,但未生成错误消息。。。我能用类似的东西吗?
MERGE INTO mydb.mytab AS Tref
USING mydb.mytab AS T ON Tref.id=T.id
WHEN NOT MATCHED THEN INSERT VALUES (123, 'etc');
(更新但不改变问题)这里所建议的其他结构似乎是
INTO INTO mydb.mytab
SELECT t1.*
FROM ( select stack(2, 123,'ect1', 20,'etc2') as (id,etc) ) t1
LEFT OUTER JOIN mydb.mytab t2 ON t1.id = t2.id
WHERE t1.id is null
;
它不优雅(还有其他?),但它是工作(!)。合并还有别的选择吗?
1条答案
按热度按时间niknxzdl1#
只有当mydb.mytab不包含匹配行时,merge才会插入