我有 2 個物體,Car和Person. 一個人可以擁有多輛汽車。所以我有
@Entity
@NoArgsConstructor
@Getter
@Table(name="Car")
public class Car {
@Id
private String id;
private String name;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "person_id")
private Person person;
}
@Entity
@NoArgsConstructor
@Getter
@Table(name="Person")
public class Person {
@Id
private String id;
private String name;
private String address;
}
但是,我只想加載所有者設定了地址的汽車(因此它不為空)。
我試過添加
@Where(clause = "address IS NOT NULL")
但無濟于事。
要將其轉換為 SQL 術語,我需要查詢
SELECT * FROM car c JOIN person p ON c.person_id = p.id WHERE p.address IS NOT NULL
uj5u.com熱心網友回復:
你必須使用查詢
select c from Car c where c.person.address is not null
@Where 注釋(順便說一句,這是 Hibernate 專有的而不是 JPA 注釋)用于集合過濾內容。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/390985.html
上一篇:如何獲得適用于H2和MariaDB的序列的nextVal
下一篇:具有固定符號數的MSSQL列
