使用Spring数据JPA时添加要查询的PARTITION语句

问题描述 投票:0回答:1

以下面的SQL查询为例

选择*来自雇员部分(p0)姓名='John';

上面的示例可以很容易地在Spring数据JPA中编写而无需“ PARTITION(p0)”。当我需要添加分区时,这变得非常困难。

一种可能的解决方案是使用本机SQL。但是,这不是我的选择,因为我必须使用PaginationAndSorting和Criteriabuilder。任何建议都很好。谢谢。

java hibernate spring-data-jpa partition
1个回答
0
投票

您无法使用Criteria API进行此操作,因为它基本上会创建JPQL,而将partition子句作为SQL的一部分,而JPQL中没有等效项。

由于您似乎需要动态创建查询,因此建议您研究Querydsl和jOOQ,以了解它们是否支持partition子句,或者使用String串联自己构造SQL。在这种情况下,您必须注意不要创建SQL注入漏洞。

如果您实际上只需要分页,可以将其与本机@Query批注结合使用就可以了。

© www.soinside.com 2019 - 2024. All rights reserved.