例如,如何将以下JPQL查询转换为QueryDSL?
SELECT p
FROM F f
JOIN f.p p
WHERE index(p)=0
其中
F.p
是List<P>
类型。 最佳答案
您必须在ListPath中使用get()方法来实现index()函数。
举例来说,这是一个JPA查询(QueryDSL 4.0.6),它获取一个目录实体,该目录实体的第二个子类别(索引1)具有给定名称:
public Catalog findSecondCatalogChildCategoryByName(String Name) {
return new JPAQueryFactory(entityManager)
.selectFrom(catalog)
.where(
catalog.rootCategories.get(1).name.eq(name)
).fetchOne();
}
注意:在此示例中,rootCategories字段具有java.util.List类型
关于java - JPQL`index()`函数的QueryDSL等效项是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34158664/