【问题标题】:Joining table and subquery in jpa在 jpa 中连接表和子查询
【发布时间】:2011-12-21 06:45:14
【问题描述】:

我有两个表 T1 和 T2,其中 t2 是子查询的结果

说清楚

select * from T1 join (select * from T3 where foo is not null) T2 on T1.key = T2.fk

【问题讨论】:

    标签: jpa jpa-2.0 jpql


    【解决方案1】:
    SELECT T1 FROM Table1Entity T1 JOIN Table1Entity.table2EntityAssociationField T2 WHERE T2.foo IS NOT NULL
    

    在哪里

    @Entity
    class Table1Entity {
    
          @OneToOne
          Table2Entity table2EntityAssociationField;
    
    }
    

    和

    @Entity
    class Table2Entity {
    
         private Object foo;
    
    }
    

    【讨论】:

    • 谢谢,但现在我需要有相同的外部连接
    • 没看懂,上面的JOIN换成OUTER JOIN不就行了吗?
    • 查看执行慢查询时生成的 SQL,看看它是否不会在那里生成一些糟糕的 SQL(n+1 选择等)。
    • 事情在我的查询中,首先我在做选择然后加入,所以我没有做不参加的事情
    猜你喜欢
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-22
    • 1970-01-01
    相关资源
    最近更新 更多