我目前正在做以下事情:
Query q = session.createQuery("select x,s.id from com.package.IdLookupHDO x JOIN com.package.SourceDataHDO s ON x.identifier = s.sourcePrimaryIdentifier");
for (Object obj : q.list()){
}
我认为此连接查询可以正常运行。但是我期望查询在list方法中返回对象数组,因为我在select(IdLookupHDO和id)中请求了两件事。 我已经四处搜索,找不到答案,但如何检索所选对象呢?
答案 0 :(得分:3)
如果您的持久类中有相应的关联,则不需要on
。
Query q = session.createQuery("select x,s.id from IdLookupHDO x join x.sourceAssociation s");
此查询将返回List<Object[]>
List<Object[]> result = (List<Object[]>)q.list();
for (Object[] obj : result){
// obj[0] is x
// obj[1] is s.id
}