表
@Data
@Entity
@Table(name = "A")
class A {
private Long id;
private Long bId;
}
@Data
@Entity
@Table(name = "B")
class B {
private Long id;
@Enumerated(EnumType.STRING)
private Status status;
}
enum Status {
NEW,
VALIDATED,
ARCHIVE
}
我有以下本机查询
@Query(value = "SELECT cast(a.id as varchar) FROM a
INNER JOIN b on a.id = b.id
WHERE a.id = :id AND
b.status = 'NEW'", // here I need smth like b.status = '" + Status.NEW + "' ",
nativeQuery = true)
Set<UUID> findIdByStatuses(@Param UUID id)
而不是 b.status = 'NEW',我需要像 b.status = '" + Status.NEW + "'" 这样的东西,
当状态名称更改时出现编译错误。但它不是这样工作的。问题是如何在没有方法参数的情况下在本机查询中达到理想的连接