I have 2 entities A & B which I would like to join on 2 conditions:
SELECT * FROM A JOIN B ON A.A_ID = B.A_ID AND SYSDATE BETWEEN B.START_DATE AND B.END_DATE
Class A {
@Id
@Column(name = "A_ID")
String aId;
@Column(name = "A_NAME")
String aName;
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name = "aId", nullable = false, insertable = false, updatable = false) // Add SYSDATE condition here
Set<B> B bObjects;
}
Class B {
@Column(name = "A_ID")
String aId;
@Column(name = "B_ID")
String bId;
@Column(name = "B_NAME")
String bName;
@Column(name = "START_DATE")
LocalDate startDate;
@Column(name = "END_DATE")
LocalDate endDate;
}
Not sure how do I add the SYSDATE BETWEEN B.START_DATE AND B.END_DATE condition in the @JoinColumn
annotation?