我正在尋找方法來比較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