如何在 Java Criteria API JPA、Hibernate 中通过横向“,”编写连接

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

我想用 ',' 实现以下结果

FROM table1 t1,
  LATERAL jsonb_array_elements(secret_data->'rating'->'subRating') AS subRatings
WHERE

我想用标准 API 来实现这一点。 我知道我们可以创建一个 LateralJoinSubquery 并以这种方式添加它 -

JpaDerivedJoin<Object> lateralJoin =
            ((SqmRoot<Table1>) Root).joinLateral(lateralJoinSubquery);

但这会产生 -

table1 t1 JOIN LATERAL (The subquery)

我不想要。

没有什么是我所期待的,我需要接近。

java criteria hibernate-criteria criteria-api criteriaquery
1个回答
0
投票

尝试以下操作:

public interface Table1Repository extends JpaRepository<Table1, Long> {

@Query(value = "SELECT t1.*, subRatings.* FROM table1 t1, LATERAL jsonb_array_elements(secret_data->'rating'->'subRating') AS subRatings WHERE <your_condition>", nativeQuery = true)
List<Object[]> findWithLateralJoin();

}

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.