我用自己继承的小型数据库教自己SQL。我正在玩Update(),
update a
from sls_ord_fact a, sls_ord_dim b
set cust_acct_key = b.cust_acct_key
where a.sls_ord_key = b.sls_ord_key
and a.sls_ord_key <> 0
and b.cust_acct_key <> 0
and a.cust_acct_key <> b.cust_acct_key;
我触发了此错误:Duplicate row error in SLS_ORD_FACT
如何识别重复记录???我不太了解数据.....
答案 0 :(得分:0)
看起来您正在尝试设置SLS_ORD_FACT
表的主键(可能是cust_acct_key
),并且您尝试将其设置为的新值已经存在于表。由于主键必须是唯一的,因此会导致错误。重复密钥位于b
中 - 事实上,它是b.cust_acct_key
,可能是SLS_ORD_FACT.cust_acct_key
的外键。