0
我需要根据匹配的claim_id
更新表randm_sampler
中来自源表clm_snapshot
的值的列assignment_type_desc
。问题是在clm_snapshot
中有两条记录,其中有空claim_id
和assignment_type_desc
的值不同。我不需要这些记录,因此我在更新语句中包含了NOT NULL
条件。但更新语句仍然返回单行子查询返回多行错误。Oracle更新声明错误
UPDATE RANDM_SAMPLER SET ASSIGNMENT_TYPE_DESC =
(SELECT DISTINCT A.ASSIGNMENT_TYPE_DESC
FROM CLM_SNAPSHOT A,
RANDM_SAMPLER B
WHERE A.CLAIM_ID = B.CLAIM_ID
AND A.CURRENT_SNAPSHOT_IND='Y'
AND A.HO_CONSULTANT_SEQ_NBR = (SELECT MAX(HO_CONSULTANT_SEQ_NBR)
FROM CLM_SNAPSHOT C
WHERE A.CLAIM_ID = C.CLAIM_ID
AND C.CLAIM_ID IS NOT NULL
GROUP BY CLAIM_ID)
AND A.CLAIM_ID IS NOT NULL)
我绝对肯定的是,重复从具有对claim_id
NULL
值的记录。但NOT NULL
条件似乎并没有在这里有效。有人可以帮我解决这个问题吗?