我与活动/收藏夹有父/子关系,现在我想从公司不等于'xyz‘的父表和公司等于'xyz’的子表中显示
即显示一个jsp,其中包含父公司不等于‘xyz’(登录的用户companyid )的所有记录,并带有来自子表的复选框。当用户选择checkbox时,它会存储父母id、用户公司id和复选框值,这在子表中是真的。
因此一个acitivy可能有多个具有相同父母is和不同公司名称的子记录。
有没有人可以教我如何在休眠状态下工作?我尝试过使用session.createQuery("from Activities and (COMPANY)<>‘“+ userCompany +"’and accNominated='true'").list();
但它正在显示父记录和具有该父it的所有子记录。但我想要显示父记录和所有具有相同activityid和不同公司的子记录,这些记录被选中,但不与登录的公司相关。
谢谢
发布于 2011-03-24 11:51:03
没有语法,你的问题有点难以理解,但听起来你想要选择具有特定标准的收藏,这些收藏与具有特定标准的活动相关联。
List<Favorite> favorites = session.createQuery(
"from Favorite f " +
"inner join f.activity a " + //assuming Favorite.getActivity() exists
"where f.companyId <> :currentCompanyId " +
"and a.companyId <> :currentCompnayId " +
"and ... " +
"and ...")
.setParameter("currentCompanyId", companyId)
.list();这将返回与Activity相关联的Favorite,其中两个记录都没有特定的companyId,以及您想要放在这两个记录中的任何其他条件。
https://stackoverflow.com/questions/5413769
复制相似问题