前に私はこの "問題"を得ました。インデックスにmatch_phrase
というクエリを実行していました。私が複数の単語の名詞で同じ検索をするまで(私は単名詞を使用する前に、例えば大学など)、すべてが期待どおりでした。私は1つのスペルミスをして、検索がうまくいかなかった(見つからなかった)、単語を削除すると(正確に綴られたものを言う)、検索作業(見つかった)。match_phraseクエリでの不明瞭な動作
設定
PUT index1
{
"mappings": {
"myType": {
"properties": {
"field1": {
"type": "string",
"analyzer": "standard"
}
}
}
}
}
POST index1/myType/1
{
"field1": "Commercial Banks"
}
ケース1:シングル名詞検索
GET index1/myType/_search
{
"query": {
"match": {
"field1": {
"type": "phrase",
"query": "comersial",
"fuzziness": "AUTO"
}
}
}
}
{
"took": 16,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 0.19178303,
"hits": [
{
"_index": "index1",
"_type": "myType",
"_id": "1",
"_score": 0.19178303,
"_source": {
"field1": "Commercial Banks"
}
}
]
}
}
ケース2:複数名詞の検索
は、ここで私が作った例があります
GET index1/myType/_search
{
"query": {
"match": {
"field1": {
"type": "phrase",
"query": "comersial banks",
"fuzziness": "AUTO"
}
}
}
}
{
"took": 1,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 0,
"max_score": null,
"hits": []
}
}
したがって、2番目のケースでは、match_phrase
クエリを実行するときにドキュメントが見つからないのはなぜですか?私が紛失しているものはありますか? これらの結果は、私が知っていることを疑うだけです。 ファジー検索を間違って使用していますか?これが問題なのかどうか、私はその行動を理解していない人です。
私の質問を読むために多くの事前に感謝します。あなたが私にこれを手伝ってくれることを願っています