首页 > 解决方案 > Hibernate - 驼峰表的@Formula 问题

问题描述

我在里面使用了一个查询@Formula,但是我在 from 子句中的表“MyTableB”是驼峰式的,因此我必须使用双引号来标识表,但是我有这个问题。

@Entity
@Table( name = "my_table_a" )
public class MyTableA {

    [...]

    @Column( name = "id_my_table_b" )
    private Long idMyTable;

    @Formula( "( SELECT tb.description FROM \"MyTableB\" tb WHERE tb.id = id_my_table_b LIMIT 1 )" )
    private String descriptionTableB;

}

结果查询:

select
    [...],
    (
    select
        tb.description
    from
        ta."MyTableB" tb
    where
        tb.id = id_my_table_b
    limit 1 ) as c1,
from
    my_table_a ta
where
    ta.id = ?

我的问题是在子查询的子句中,它放了 a ta."MyTableB",它不是 my_table_a 的列,而是一个表。

PS:我正在使用postgresql。

标签: javapostgresqlhibernatejpa

解决方案


推荐阅读