【发布时间】:2016-03-25 13:10:29
【问题描述】:
我有一个返回(重复)名称列表的结果集,其中包含与该名称关联的一些 sql 条件。这是一个 2 列的结果集。它看起来像这样:
____________________________________
|id | data |
|__________________________________|
|john | sql1 |
|john | sql2 |
|adam | sql1 |
|jack | sql3 |
|jack | sql2 |
____________________________________
我想要构建一个如下所示的 SQL 查询:
select *, 'john' as id from table_x where sql1 or sql2
union
select *, 'adam' as id table_x where sql1
union
select *, 'jack' as id from table_x where sql3 or sql2;
这是否可以简单地通过在 while 循环中使用 res.next() 并在那里做一些魔术来实现?我曾想过使用二维数组或 Map 来首先存储结果集,然后对其进行迭代以完成此操作,但想知道是否有更好/更简单的方法来执行此操作。
【问题讨论】:
-
@Andreas:关于检查
id值的变化,你能指出我正确的方向吗?谢谢! :) -
将评论转换为答案。
-
您的数据库平台是什么?我假设 sql1 和 sql2 是谓词(col_name = value)?
-
@slambeth:你是对的。它们是谓词。我正在使用 Impala。
-
否决票的任何理由?谁投了反对票?
标签: java loops jdbc resultset impala