タイトルがややこしいので、コードで説明します。
@Indexed @Entity
public class Person {
@Id @GeneratedValue
private Long id;
@OneToMany(mappedBy = "employee")
@IndexedEmbedded
private Set<Job> jobs = new LinkedHashSet<>();
}
@Entity
public class Job {
@Id @GeneratedValue
private Long id;
@Field
private Boolean current;
}
現在、2 つの異なる検索シナリオがあります。人の現在の仕事のプロパティと、その人がこれまでに経験したすべての仕事です。事後にフィルターを適用したり、クエリに別の句を追加したりできることはわかっていますが、可能であればこの情報をインデックスに複製したいので、2 つの異なる検索クエリを使用できます。
(jobs.id: [10 TO 100])
id
10 ~ 100 のすべてのジョブ(currentJobs.id: [10 TO 100])
この ID 範囲の現在のすべてのジョブ
これは可能ですか?もしそうなら、どのように?