Sql DB2将一列值复制到另一列

Sql DB2将一列值复制到另一列,sql,db2,sql-update,Sql,Db2,Sql Update,在DB2中,我有两个表——TableA和TableB。 在表A中,共有10行。在表B中,共有12行。 表A有一个名为IntValueA的列,其类型为整数。 表B有一个名为INTVALUEBINTEGER类型的列 我希望TableA的IntValueA替换任何10个TableB的IntValueB值,这样TableA和TableB将有10个通用值,其中IntValueA=IntValueB IntValueA可以替换任何IntValueB。没有条件 有人能告诉我DB2查询应该是什么样子吗?试试这个

在DB2中,我有两个表——TableA和TableB。 在表A中,共有10行。在表B中,共有12行。 表A有一个名为IntValueA的列,其类型为整数。 表B有一个名为INTVALUEBINTEGER类型的列

我希望TableA的IntValueA替换任何10个TableB的IntValueB值,这样TableA和TableB将有10个通用值,其中IntValueA=IntValueB

IntValueA可以替换任何IntValueB。没有条件

有人能告诉我DB2查询应该是什么样子吗?

试试这个

UPDATE 
(SELECT IntValueB, ROWNUMBER() OVER() RN_ FROM TableB) B
SET IntValueB = 
(
SELECT IntValueA 
FROM (SELECT IntValueA, ROWNUMBER() OVER() RN_ FROM TableA) A
WHERE A.RN_ = B.RN_
)
WHERE RN_ <= 10;

更新这么多行会很慢。你确定你需要这么做吗?是的。我需要这样做。表A和表B有什么关系?KEYA=KEYB吗?换句话说,对于表a中的给定行,如何知道从表B中提取IntValueB的行?这两个表之间没有公共值。我想用表A中的10个键替换表B中10个键的任何值。