Java Hibernate 4.3子查询和内选择
我在hibernate4.3.x中遇到这种情况Java Hibernate 4.3子查询和内选择,java,hibernate,Java,Hibernate,我在hibernate4.3.x中遇到这种情况 我有两张桌子,产品和存货 我有一对多的关系,一个产品有很多存货 通过在库存表中列出可用库存的总和来检查产品的可用性 因此,我有一个自定义查询: SELECT p.product_id, p.status_id, p.product_name, (SELECT COALESCE(SUM(i.available),0) FROM inventory i WHERE i.product_id = p.product
SELECT
p.product_id,
p.status_id,
p.product_name,
(SELECT COALESCE(SUM(i.available),0) FROM inventory i WHERE i.product_id = p.product_id AND i.status_id = 1) AS available
FROM product p
我想使用条件进行此查询,我一直在select中进行sum子查询,在Hibernate中如何执行此操作?我必须使用投影吗?在这种情况下如何使用投影?where子句是什么?如果始终相同,且仅参数值发生变化。。然后,也许您应该使用@NamedQuery,这一直是首选方法。那么您将使用JPQL而不是criteria.Hi@MaciejKowalski,我没有使用WHERE子句,因为我现在不需要它,我想列出所有的产品。你是说HQL吗?在这种情况下,我会选择JPQL/HQL(取决于使用SessionFactory还是EntityManagerFactory)。只有当查询的结构可能基于某些逻辑发生变化时,才应使用Crtieria。但事实并非如此。你已经试过HQL了吗。。如果是,你有问题吗?