0
我的目的是结合2个多重匹配查询,如下所示。我希望MPN或SKU字段必须匹配每个关键字。因此,关键字“hp”和“301”都必须存在于MPN或SKU中。 或Name或Name.raw应该具有关键字“hp”或“301”中的一个。 完全匹配是MPN/SKU应该有更高的分数。 我写了如下查询,但它不返回任何结果,虽然有文件有这些条件。 我的问题是,如何结合多个匹配查询?
1) Does must query require keyword to be found in both SKU and MPN
for the multi_match query?
2) Combination of must and should is AND or OR? it looks like AND
for me as it doesn't return any result. if it is AND, how to make it
as OR? I cant find any operator on bool. I tried to wrap in another
should query but it didnt help.
我也很欣赏我的目的的任何查询建议。
"from": 0,
"size": 10,
"explain": true,
"query": {
"bool": {
"must": [
{
"multi_match": {
"type": "best_fields",
"query": "hp 301",
"fields": [
"MPN^9",
"SKU^8"
],
"operator": "and"
}
}
],
"should": [
{"multi_match": {
"type": "best_fields",
"query": "hp 301",
"fields": [
"Name.raw2^7.5",
"Name^7"
]
}}
]
}
}