我的查询搜索标题,描述,作者, ean , isbn
我对 title ^ 3 ,作者^ 2 , ean ^ 100 和 isbn ^ 100 有所提升
当我被ean击中时,它只返回1个结果。 (ean是一个数字)
ISBN是一个字符串,例如。 978-12-1234-123-8 我获得了数千个ISBN的结果。但如果有击中,那么其他人的结果会略高一些。
我使用 multi_match ,类型为 best_fields 。
有没有办法只获得相关结果?或者我必须自己做?
编辑:
映射:
"product": {
"properties": {
"img": {
"type": "string"
},
"dobrovsky_rating": {
"type": "float"
},
"isbn": {
"type": "string"
},
"saleType": {
"type": "string"
},
"rating": {
"type": "float"
},
"description": {
"analyzer": "hunspell_cs",
"type": "string"
},
"availability": {
"type": "string"
},
"priceDph": {
"type": "long"
},
"title": {
"analyzer": "hunspell_cs",
"type": "string"
},
"url": {
"index": "not_analyzed",
"type": "string"
},
"rating_count": {
"type": "long"
},
"ean": {
"type": "string"
},
"serie": {
"analyzer": "hunspell_cs",
"type": "string"
},
"id": {
"type": "long"
},
"category": {
"analyzer": "hunspell_cs",
"type": "string"
},
"authors": {
"analyzer": "hunspell_cs",
"type": "string"
}
}
数据示例:
Id: 123
Title: Game of Thrones
Author: George R.R. Martin
Img: www.aaa.cz/got.png
Url: www.aaa.cz/got.html
Description: Game of Thrones is a ...
EAN: 9788071974925
ISBN: 978-80-7197-492-5
...
答案 0 :(得分:1)
试试这个
POST /MyINdex/_search
{
"from": 0,
"size": 10,
"_source": {
"include": [
"*"
]
},
"query": {
"query_string": {
"query": "978-12-1234-123-8",
"fields": [
"title^3",
"author2^2",
"ean^100",
"isbn^100",
"description^1"
],
"default_operator": "and"
}
}
}