如何解决雪花合并到删除是删除所有内容还是保留所有行?
我正在将此合并到脚本中:
MERGE INTO TEMP_TABLE_NAME ST USING (
SELECT
SOBS.OBSERVATION_DATE_LOCATION_HASH_KEY AS HASH_KEY,SOBS.LOAD_END_DT AS DELETION_TIME
FROM
SAT_OBSERVATION SOBS
WHERE
SOBS.LOAD_END_DT IS NOT NULL
) ON md5(
CONCAT(
DATE(ST.OBSERVATION_DATE,'DD/MM/YYYY'),CONCAT('CAMP',CONCAT(ST.CAMPNO,ST._SUBMISSION_TIME))
)
) = HASH_KEY
WHEN MATCHED THEN DELETE ";
此脚本将为现有的 SAT_OBSERVATION
查找名为 HASH_KEY
的表,并删除 TEMP_TABLE_NAME
中的所有现有哈希键。
这个脚本的问题在于它没有删除行。如果我删除了部分 WHERE SOBS.LOAD_END_DT IS NOT NULL
,它要么保留所有内容,要么删除所有行。
我用 WHERE SOBS.LOAD_END_DT IS NULL
试了一下,临时表中的所有行都被删除了。
假设我们在临时表中有 3 行,其中 2 行 HASH_KEY 已经存在,我只需要在临时表中保留一行。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。