2017-05-11 7 views
0

検索フレーズを含むSolr検索結果を特定のフィールド(ここではresourcename)の結果セットの先頭に配置しようとしています。フィールドに検索フレーズを含む結果をブーストする方法

私はSolrの初心者です。 、

https://localhost:8898/solr/collection1/select?defType=edismax&fl=resourcename&indent=on&q=resourcename:"test"*^200,%20content:"test"*^1&qf=resourcename^200%20content^2&rows=1000&wt=json 
https://localhost:8898/solr/collection1/select?bf=if(exists(resourcename),100,1)&defType=edismax&fl=resourcename&indent=on&q=resourcename:"test"*^200,%20content:"test"*^1&rows=1000&wt=json 
https://localhost:8898/solr/collection1/select?bf=if(exists(resourcename),100,1)&defType=edismax&fl=resourcename&indent=on&q=*:"test"*&rows=1000&wt=json 
https://localhost:8898/solr/collection1/select?defType=edismax&fl=resourcename&indent=on&q=*:"test"*&qf=resourcename^200%20content^2&rows=1000&wt=json 

しかし:私はかなりしばらくの間、ウェブを検索し、いくつかの関連の質問を発見し、似ています:

Use function query for boosting score in Solr

SolrNet queries with boost functions

それから私は、これらのようなクエリで自分自身を実験し始めました私が何をしようと試みても、testという単語を含む結果がresourcenameの結果の上に表示されます。

私が紛失したり間違っていると思われるアイデアはありますか?

答えて

1

多くの文法上の間違いがあります。私は、照会パーサー[1]のsolr wikiを見てみることをお勧めします。

パースされたクエリを常に見て、検索結果のデバッグ機能を調べてください。

あなたは私には、次のリクエストパラメータ(ウィキから引用)を使用します求めている動作を取得するには、次の

Q = fooのバー

QF =フィールド1^5フィールド2を^ 10

PF = FIELD1^50フィールド2^20

DEFTYPEこれらのパラメータ、Dismaxク付= dismax

((フィールド1 +::FOO^5 ORフィールド2:FOO^10)AND(フィールド1:バー^ 5 ORフィールド2:バー^ 10))

しかしERYパーサは、次のようになりますクエリを生成し、それはまた、結果のみを高めるために使用される別のクエリを生成します。

フィールド1:「FOOバー」^ 50またはフィールド2:「FOOバー」^ 20

この方法では、あなたがに応じて結果を向上させることができますいくつかのフィールドでのマッチ、関連するブースト、特定の他のフィールドに現れるフレーズの追加などがあります。

[1] https://cwiki.apache.org/confluence/display/solr/The+Extended+DisMax+Query+Parser

+0

ありがとう。これは役に立ちますが、何らかの理由で検索用語/句を含むすべての結果を一番上に残すことはできません。私は、私が欲しい財産に非常に大きな重さを試しましたが、何らかの理由でそれらの重さや何かを適用することを拒否しています...:^)私はほとんどのフィールドに重量をかけようとしましたが、まだ何もありません。私は何が起こっているのかわかりません... – user2173353

+0

うーん...私はそれを持っていると思います: 'これはaのようなものを含むフィールドを見つけるために' term * 'の代わりに' * term *期間。なぜか分かりません...:)^ – user2173353

+0

最後のコメントに質問がありましたら教えてください。しかし、どういうわけか、助けてくれてありがとう。少なくとも私はそれを今かなり良く働かせました。私はパフォーマンスの問題を恐れています。 :) – user2173353

関連する問題