0
我有以下Elasticsearch,版本2.3,查詢產生零結果。從上面的查詢多重匹配短語前綴在Elasticsearch中返回零結果
{
"query": {
"bool": {
"must": [
{
"match_phrase_prefix": {
"phone": "123"
}
},
{
"match_phrase_prefix": {
"firstname": "First"
}
}
]
}
}
}
輸出:
{
"took": 3,
"timed_out": false,
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"hits": {
"total": 0,
"max_score": null,
"hits": []
}
}
與_explain
{
"_index": "index_name",
"_type": "doc_type",
"_id": "_explain",
"_version": 4,
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"created": false
}
但是出上述查詢的,只有這樣,我得到的結果,包括一個文檔符合下列任上述查詢的兩部分。如果我包含完整的電話號碼,則文檔將顯示在結果中。
電話號碼作爲字符串存儲,沒有任何格式。即「1234567890」。
爲什麼兩個前綴查詢返回零結果的任何原因?
{
"query": {
"bool": {
"must": [
{
"match_phrase_prefix": {
"phone": "123"
}
}
]
}
}
}
{
"query": {
"bool": {
"must": [
{
"match_phrase_prefix": {
"firstname": "First"
}
}
]
}
}
}