23

Solr 4.0で、関係のあるドキュメントに「結合」機能が導入されていることに気付きました。これは素晴らしいことですが、http: //wiki.apache.org/solr/Joinの例は、すべてのドキュメントが単一のインデックスにあるシングルコア用であることに気付きました。

マルチコアに「join」を使用できるかどうか誰かが知っていますか?

4

1 に答える 1

42

このコメントは、以下を使用することで可能であると述べています。

{!join from=fromField to=toField fromIndex=fromCoreName}fromQuery

私はそれを自分で試しました、そしてここにもっと詳細な例があります:2つのコアを持っています

  • ブランド{id、name}
  • 製品{id、name、brand_id}

ブランド:{1、Apple}、{2、Samsung}、{3、HTC}

製品:{1、iPhone、1}、{2、iPad、1}、{3、Galaxy S3、2}、{4、Galaxy Note、2}、{5、One X、3}

http://example.com:8999/solr/brands/select?q=*:*&fq={!join from = brand_id to = id fromIndex = products} name:iPad

これは次のように変換されます。

SELECT b.* FROM brands b
       INNER JOIN products p ON b.id=p.brand_id
       WHERE p.name="iPad";

結果は次のようになります:{id: "1"、name: "Apple"}

于 2012-10-01T10:18:58.143 に答える