一下是一个批量处理update的语句
 update xh_2 v set v.pk_psndoc = (select b.pk_psndoc from bd_psndoc b,xh_2 v where b.psncode=v.psncode);
  把v表中的人员主键替换为b表中的人员主键,二者通过人员编码唯一性匹配,但是在执行该语句时报: 单行子查询返回多行! 
  请问各位该语句该怎么写?