--是不是当B.RMrpInNo=48时就用条件A.RMrpYear=B.RMrpYear+1 and A.RMrpInNo=1
--不等于时就A.RMrpYear=B.RMrpYear and A.RMrpInNo=B.RMrpInNo+1?
试试
update A set A.RMrpQty=B.RMrpQty from RMRP A,RMRP B 
where (B.RMrpInNo=48 and A.RMrpYear=B.RMrpYear+1 and A.RMrpInNo=1)
or (B.RMrpInNo<>48 and A.RMrpYear=B.RMrpYear and A.RMrpInNo=B.RMrpInNo+1建议分两条完成