Spring JDBC SqlRowSet使用非唯一列标签进行检索

时间:2014-11-13 19:53:35

标签: jdbc spring-jdbc

Spring的SqlRowSet具有String getString(String columnLabel)

但是如果我的查询连接两个具有相同列名的表,则结果集将具有非唯一列标签。

例如:

select a.name, b.name
from a
join b on a.id=b.id

运行查询并填充SqlRowSet对象后,我调用。

例如:

sqlRowSet.getString("name")

它会返回给我a.name,还是b.name?

尝试具体,如使用:

sqlRowSet.getString("a.name")

会抛出错误

1 个答案:

答案 0 :(得分:0)

如果您有非唯一名称,则需要使用AS子句分配唯一标签,或者需要通过索引检索列。

使用AS(注意AS本身就是 - 在大多数数据库系统中 - 可选):

select a.name AS aname, b.name bname
from a
join b on a.id=b.id
sqlRowSet.getString("aname")

按索引。要检索a.name

sqlRowSet.getString(1)