ORA-30926:无法在以下查询中的源表中获取稳定的行集

时间:2015-11-02 10:15:14

标签: oracle

MERGE INTO tbl_brk_sch_cat_mappin_temp bsc
USING  lookup l
ON (l.lookup_id = bsc.catery_id) 
WHEN MATCHED THEN
UPDATE SET bsc.new_category=l.longname where  bsc.created_date=to_date('10/30/2015','MM/DD/YYYY');

我已经运行了tbl_brk_sch_cat_mappin_temp它有数据,而且我还运行了查找'表也​​有数据。

为什么会出现此错误以及如何解决?

1 个答案:

答案 0 :(得分:1)

如果源数据中有多行(在您的情况下,查找表)与目标表中的单行(在您的情况下为tbl_brk_sch_cat_mappin_temp表)中基于您的连接条件匹配,则会出现此问题

在这种情况下,您要求Oracle使用两个不同的值更新单行,这样做没有任何意义。

要解决此问题,您需要更正源表中的数据或修复连接条件,以便目标表中的每一行与源表中的单行匹配。