У меня есть следующие сущности:
@Entity
public class Organisation {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
// ...
}
@Entity
public class Section{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
// ...
@ManyToOne
@JoinColumn(name = "organisation_id", nullable = false)
private Organisation organisation;
}
@Entity
public class SubSection {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
// ...
@ManyToOne
@JoinColumn(name = "section_id")
private Section section;
}
Теперь я хочу найти все SubSections
по Organisation
Id
. Прямо сейчас я делаю это, используя JPQL
в SubSectionRepository
, как указано выше:
public interface SubSectionRepository extends JpaRepository<SubSection, Long>{
@Query(value = "SELECT ss.* FROM sub_section as ss INNER JOIN section as s ON ss.section_id = s.id WHERE s.organisation_id = ?1", nativeQuery = true)
List<SubSection> findByOrganisation(Long organisationId);
}
Есть ли способ, которым я могу сделать INNER JOIN
с помощью интерфейса JpaRepository?