3

簡単なプロジェクト (宿題ではないことを約束します!) のために、「人」と「仕事」という 2 つのコアを持つ単純な solr インストールを用意しました。それぞれにいくつかの構造化データがありますが、テキスト フィールドもあります。

people.text を使用して jobs.text にクエリを実行したいと考えています。

この例を見つけることができず、SolrQuerySyntax ページはコレクションやコアを参照していません。

実際の「結合」を使用するためのフィールドはありません。

出来ますか?例/チュートリアルを教えてもらえますか?

ありがとう。

4

1 に答える 1

2

Solr Join はコア間で実行できます。その方法については、このStackOverflow の投稿を参照してください。

しかし、その投稿とは別に、Solr-Wikiが言うもう 1 つのことがあります。

Solr Join は実際には (SQL 用語での) 結合ではなく、内部クエリの方法です。

あなたのシナリオを考えると、2 つのコア (「人」と「仕事」) には、「結合」操作を実行する共通のフィールドがあると思います。それを「id」と呼びましょう。

Solr Join を使用すると、「人」または「仕事」のフィールドを含む結果のドキュメントを取得できますが、両方のコアのフィールドを統合することはできません。

したがって、実際には

  • 内部クエリ

people.id = jobs.id である人から peopleField1、peopleField2 を選択します

また

people.id = jobs.id である人から jobField1、jobField2 を選択します。

ではない

  • 加入

peopleField1、peopleField2、jobField1、jobField2 を people から選択し、people.id = jobs.id で参加します。

于 2013-03-10T04:17:03.733 に答える