Spring Boot JPA Query with 为空且为空关键字

我正在使用 spring boot 版本 2.0.3.RELEASE 和 spring data jpa 版本 2.0.8.RELEASE。我有两个表 TableA,TableB,它们是一对一映射的。


表A


@Entity

@Table(name = "table_a")

public class TableA {


     @Id

     @Column(name = "id")

     private Long id;


     @OneToOne(mappedBy = "table_b", cascade = CascadeType.ALL)

     private TableB tableB;

}

表B


@Entity

@Table(name = "table_b")

public class TableB {


     @Id

     @Column(name = "id")

     private Long id;


     @OneToOne

     @JoinColumn(name = "id")

     private TableA tableA;

}

当 Mapped TableB 不存在时,我需要获取 TableA 值。我在 TableA Jpa 存储库中编写了以下查询。


@Query(value = "select a from TableA a where a.tableB is null and a.id=?1")

TableA findTableAValues(Long id);

但它没有给出预期的结果。如果我更换为空与空关键字,查询给出了预期的结果。请任何人都可以解释为什么会发生这种事情?


UYOU
浏览 285回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java