2016-04-06 7 views
1

私は多値フィールドでSolrインデックスを持っています。それをmvfieldとしましょう。現時点では値の有限集合であっても、任意の値を含むことができます。多値フィールドで値を排他的に検索するにはどうすればよいですか

このフィールドには、の値しか含まれていないドキュメントがあります。例:

  • DOC1:mvfield = [abcdef]
  • DOC2:mvfield = [ef]
  • DOC3:mvfield = f]
  • doc4:mvfield = [a,b,c,e,f]
  • DOC5:mvfield = [e]

この例では、それはDOC2DOC3を与える必要がありますので、私は、mvfieldにのみeまたはfを含むドキュメントを返すクエリを作成したいですおよびdoc5

私は範囲を使用して、粗製の回避策が見つかりました:

  • -mvfield:[* to e} AND -mvfield:{e TO f} AND -mvfield:{f TO *]

を、それは非常に壊れやすいようです。これを行うための良い方法はありますか?

答えて

0

フィルタクエリを使用するだけではどうですか。

&fq=myfield:eなど。

関連する問題