2009-03-19 24 views
1

は、ここで私は擬似コードを使用して、何をしたいですanotherFieldは 'foo'です。Lucene検索

Luceneでこのようなクエリを実行するにはどうすればよいですか? Luceneクエリ構文で

答えて

5

+(someField:bar someField:baz) +anotherField:foo 

"+" は、用語は単にGoogleの検索構文のように、必要とされることを意味しています。括弧は、単一の用語のように動作する用語をグループ化します。 「+」(または「 - 」)がなければ、用語はオプションです。少なくとも1つの用語が一致しなければならず、一致する用語が多いほどスコアは高くなります。

この文字列をQueryParserに渡してQueryオブジェクトを作成します。クエリは、必要に応じて、いくつかの検索方法のいずれかに渡すことができます。

+0

ありがとうございます!私はそれを試してみましょう。その間、私はこれを正解とマークします。期待どおりに動作するかどうかをお知らせします。 –

+0

素晴らしい仕事をしているようです。再度、感謝します。 –