使用临时表加入的条件查询

时间:2015-09-04 13:16:59

标签: java sql hibernate hibernate-criteria

我有@ManyToMany关系的卡片和菜单。所以,在我的数据库中我有3个表(卡片,菜单,card_menu)。我也写了sql-query,它获取了正确的数据:

 str1 <- "azertyuiop"

但是我将此查询转换为hibernate条件查询时遇到问题。此刻我创建了下一个查询:

select *
from card as c
inner join menu as children on (children.parent_menu=3)
inner join menu_card on (menu_card.card=c.id and menu_card.menu=children.id)

我的问题是加入表“menu_card”,即实际上它不存在于我的客观模型中。

UPD:我的实体

Criteria criteria=sessionFactory.getCurrentSession().createCriteria(Card.class,"c")

.createAlias("c.menus", "children")
                .add(Restrictions.eq("children.parentMenu", 3))
                .createAlias("c.menus","menu")
                .add(Restrictions.conjunction(Restrictions.eq("menu.card","c.id"),Restrictions.eq("menu.id","children.id")))

0 个答案:

没有答案