我正在寻找方法来比较java中的两个ResultSet
s(RS1
和RS2
)。在java中比较结果集
需要注意的事项/要求
结果集是从两个不同的数据库(
Oracle
&SQl-Server
)。因此我不能做任何SQL查询更改copare结果牵强。ResultSet
中的任何一行可以具有比彼此更多的行。任何
ResultSet
可以具有数据不是它们在其他ResultSet
实施例:
RS1 RS2
Column1 Column2 Column1 Column2 Column3
A 1 A 2 ITEM1
C 1 B 4 ITEM2
D 2 C 2 ITEM3
E 5 D 1 ITEM4
预期结果
==>甲是有效的,因为它在RS1
& RS2
,也Column2
对于A在RS2>Column2
对于A在RS1
==> B是无效的,因为它是不存在在RS1
==> C是有效的,因为它是在RS1
& RS2
,在RS1还Column2
对C在RS2>Column2
对于C
==> d是无效的,因为,即使它是在有和RS1
RS2
,所述Column2
为d在RS2 < Column2
为d的RS1
==> E是无效的,因为它不存在于RS2
寻找可行的方案来解决这个问题。
@RJ道歉配对地图只适用于关键值对。我的一个RS有3个值。道歉,没有提到,最初在询问查询时我认为这不会有什么区别:( – misguided 2013-04-05 05:03:17
@misguided - 你是对的,即使现在也没有什么区别,你不应该担心关于'column3',因为你不会把它放到你的地图中,也不会放在你的支票上。让ResultSet返回3列,你只需要从中选择第1和第2列来填充你的'Map'。 – SudoRahul 2013-04-05 05:11:07
@RJ如果我想在RS1中打印第3列中的RS2项目,我该怎么办? – misguided 2013-04-05 05:14:25