【问题标题】:HQL suitable queryHQL 合适的查询
【发布时间】:2013-12-16 11:44:05
【问题描述】:

您好,我使用 hibernate HQL 查询,假设我有 3 个彼此相关的类,如下图所示,我想选择“Bonc”,其中“ItemsMateriel”= 一个数字,应该我愿意 ??我试过这种方式

public List SelectBzzouitemmateriel (int i)
    {
             Query q =em.createQuery("select bc from Bonc bc inner join bc.selecteditems inner join bc.selecteditems.itemmateriel where bc.selecteditems.itemmateriel.iditemsmateriel = :i");
             q.setParameter("iditemsmateriel", i);

             return   (List) q.getResultList();

    }

【问题讨论】:

    标签: hibernate jpa hql


    【解决方案1】:

    加入的实体也可能有别名:

    select bc from Bonc bc join bc.selecteditems si where si.itemmateriel.iditemsmateriel = :i
    

    此外,您不需要显式加入来遵循一对一的关系。

    【讨论】:

    • 我试过这种方式,但它告诉我“org.hibernate.QueryParameterException:找不到命名参数[iditemsmateriel]”
    猜你喜欢
    • 2010-09-09
    • 2020-09-22
    • 1970-01-01
    • 1970-01-01
    • 2011-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多