假设我有这样的查询,例如:
select b.id, b.desc, c.context_desc, d.age
from
index a, events b, contexts c, user d
where
a.id = b.id and a.context_id = c.context_id and a.user_id = d.user_id
order by b.id
在Java中,ResultSet可以处理多个表(假设列名都是唯一的)?
int id = resultSet.getInt("id");
String desc = resultSet.getString("desc");
String context_desc = resultSet.getString("context_desc");
int age = resultSet.getInt("age");
答案 0 :(得分:1)
在Java中,ResultSet可以处理多个表(假设列名都是唯一的)?
是的,这是可能的!
如果您有2个具有相同名称的列,则可以为它们指定别名。
答案 1 :(得分:1)
绝对
结果集仅包含SELECT
子句指定的列。在FROM
子句中,您拥有的表数绝对没有区别。在您的情况下,您的结果集将包含id
,desc
,context_desc
和age
列,如您所示。
最终,只要您的SQL是合法的,意味着列名称是明确的,唯一命名的和可见的,结果集将包含您指定的内容(不多也不少)。
这是ResultSet文档,有关它如何工作以及如何使用它的更多信息。