我试图从一个表插入不同的值到另一个。我的目标表有一个主键studentid
,当我执行不同的id
从源到目标加载成功。当我试图加载一堆列从源到目标包括student_id
,我得到一个错误违反唯一约束。目标上只有一个约束,它是studentid
上的主键。oracle唯一约束
我的查询看起来像这样(只是一个例子)
insert into target(studentid, age, schoolyear)
select distinct id, age, 2012 from source
为什么上面的查询返回在其中如下面的查询工作完全正常
insert into target(studentid)
select distinct id from source
帮我解决这个错误。
谢谢你的时间。
您需要决定_which_行承担多'id',其中如下面的第一个答案中指出,其他列_not_不同。您将需要执行一些汇总'MIN(),MAX()'等。 –
感谢您的答复。我理解这个问题。我想要id的唯一值和其余列的相应值。我怎样才能做到这一点。 ? – user1751356