【问题标题】:merging 2 ResultSets with different fields合并 2 个具有不同字段的 ResultSet
【发布时间】:2014-03-07 13:55:26
【问题描述】:

我在这里发布了一个问题:
java nested while loop in result set

答案是正确的,但不幸的是我的 sql server 不支持不敏感、可更新的 ResultSets(错误为“the cursor type/concurrency combination is not supported”)

从 2 个结果集中合并结果以获得如下所示的合并结果的最佳方法是什么。

ResultSet set1: 
id | name
1  | A
2  | B
3  | C
...

ResultSet set2:
id | alias
1  | F
2  | G
2  | H

我要打印出来:

Id: 1, Name: A, Alias: F
Id: 2, Name: B, Alias: G, H

仅供参考,id 在两组中都按升序排列。两个 ResultSet 都是 sql 查询返回的结果 而且我不使用 UNION,因为 sql SELECT 查询返回不同的字段('name' 和 'alias')

【问题讨论】:

    标签: java jdbc merge resultset


    【解决方案1】:

    您可以执行以下操作

    Select s1.Id, s1.Name, s2.Alias
      from Set1 s1, Set2 s2
     where s1.Id= s2.Id
     order by s1.Id, s2.Alias
    

    或者根据您是否要查看“C”行来选择“左联合”。
    现在你会得到:

     Id  Name  Alias
         1  A     F
         2  B     G
         2  B     H
    

    我不知道如何将多个“Set2”行合并为一行

    【讨论】:

      猜你喜欢
      • 2015-11-18
      • 1970-01-01
      • 2018-09-21
      • 1970-01-01
      • 1970-01-01
      • 2021-12-18
      • 2019-10-11
      • 2013-02-14
      • 1970-01-01
      相关资源
      最近更新 更多