我的索引中有3个文档
文档1:
x:1
文档2:
x:1y:1
文档3:
x:2y:3
我正在使用此查询来查找相关文档
"query" : {
"bool" : {
"should" : [
{
"match" : {
"X" : {
"query" : 1,
"boost" : 500
}
}
},{
"match" : {
"Y" : 5
}
}
]
}
}
此查询按我期望的方式工作,当我寻找x:1,y:1时,我得到的DOC2得分最高。
我试图实现的目标:当查询为x:1,y:5时,我想获取DOC1(默认情况下)。有可能吗?
我知道我可以通过添加查询“ AND NOT EXISTS”来实现。还有另一种方法吗?
如何强制x
并使y
为自愿,即:
GET xy/_search
{
"query": {
"bool": {
"must": [
{
"match": {
"x": {
"query": 1,
"boost": 500
}
}
}
],
"should": [
{
"match": {
"y": 5
}
}
]
}
}
}