私は豊富なLucene Query Parser構文に基づいてAzure Searchを使用しています。私は "〜1"を距離のための1つの記号への追加パラメータとして定義した)。しかし、私は問題に直面しました。エンティティは正確に一致していても注文されません。例えば、 "blue〜1"は "blue"、 "blue"、 "glue"を返すか、 "P002"のような製品SKUを検索すると "P003"、 "P005"、 "P004" P002 "、" P001 "、" P006 ") 私の質問:正確な一致を持つエンティティはリスト内の最初のものでなければならない、あるいはファジー検索を使用していても1つの検索結果でなければならないということを定義する方法はありますか"〜 1 "?Azure検索 - 最初の結果または単一の結果と完全一致
1
A
答えて
3
Lucene Query syntaxを使用すると、term^2 | term~1
のように個々のサブクエリをブーストすることができます。これは、「用語 'OR'用語 'と一致する文書を編集距離1で検索し、ファジーマッチ2。
search=blue^2|blue~1&queryType=full
の完全な一致は、常に文書スコアがfunction of term frequency and inverse document frequencyあるとして結果セットの最初になるという保証はありません。ファジーサブクエリだタームへの入力項を展開している場合あなたの文書コーパスでは非常にユニークですが、私の例では2つのブースティング要因が必要です。一般的に、関連性注文のためのスコアは実用的な考えではありません。詳細については、次の記事で私の答えを見てみましょう:Azure Search scoring
が、これは
関連する問題
- 1. 弾性検索2.3ワイルドカードクエリは完全一致の結果を返しません
- 2. Solrの:完全一致検索に戻り、正しい結果一致したが、ファジィ返さない試合
- 3. Azure検索、完全一致のフレーズ一致
- 4. 結果のためのJavascriptの一致/検索テーブル - 合計初心者
- 5. python elasticserch:完全一致のみ結果を返すことができます
- 6. regex return単語全体の一致結果
- 7. H2全文検索の検索結果
- 8. 検索結果からクリックしたときの検索結果
- 9. 検索結果が一致しない場合は、一致した行と一致する行を
- 10. 弾性検索結果が正確に一致してから最初に一致する
- 11. Algolia、単語が一致したときに結果を表示
- 12. アルゴリアの部分文字列一致の検索結果
- 13. 単なるテキストの最初の結果が検索
- 14. AngularJS - 複数のキーワードに一致する検索結果
- 15. フルテキストインデックスの一致クエリがmysqlで完全な結果を返さない
- 16. SQL Serverのフルテキスト検索で、完全一致とフォールバックの一致
- 17. ワイルドカード検索による検索結果一致した場所に応じて
- 18. 単一行の結果を単一の列に変換する結果
- 19. Powershell - 全体の単語(または)完全一致を検索するには
- 20. Twitterの検索APIのクエリ結果がキーワードと一致しません
- 21. MySQL FULLTEXTの結果が一致する
- 22. シェルの検索結果と一致番号の出力方法は?
- 23. Sql Server全文検索単一の結果列複数の列にわたって検索
- 24. フィルタ結果リストビュー内の検索結果
- 25. 弾性検索クエリの完全一致
- 26. Elasticsearchでの完全一致(ファセット検索)
- 27. Solr 6 DateRangeField完全一致の検索
- 28. スフィンクス完全一致の検索
- 29. ElasticSearch完全一致のメールを検索
- 30. 単一の結果を他の複数の結果と結合するデータブロック
感謝を助けている場合、私に教えてください!それはうまくいきましたが、唯一の違いがありました。私が理解しているように、 "OR"演算子は "blue^2" OR "blue〜1" OR BOTHの結果を得ます。あなたが言ったように、完全一致が常に最初であるという保証はありません。いくつかの実験の後、私はsearch =(blue^2)|(blue〜1)&queryType = fullを実行することによって "strict or" –