如何在JPA中使用CriteriaQuery转换SQL查询

时间:2014-08-12 19:09:28

标签: java jpa openjpa criteria-api jpa-2.1

我想将我的SQL查询从SQL转换为Criterias(我不想使用JPQL),我有这个SQL查询:

SELECT * FROM (
SELECT CONCAT_WS(' ',p.first_name, p.middle_name, p.last_name) AS fullname FROM persons p) AS tmp
WHERE fullname LIKE '%cetina avila%' ORDER BY fullname;

这样做的最佳方法是什么?我试图从我的talbe人那里搜索全名。

由于

1 个答案:

答案 0 :(得分:1)

执行此操作的一种方法是在Person类上使用@Formula映射,如此

@Formula("CONCAT(first_name, ' ', middle_name, ' ', last_name)")
private String fullname;

然后在您的标准中,您可以像任何普通字段一样进行搜索。

有关计算字段的详情,请参阅Calculated property with JPA / Hibernate

相关问题