弹性搜索结合 match 和 should
Elastic search combine match and should
我想创建一个可以使用匹配的查询,并且该匹配应该只考虑另一个字段值为 null 或某个特定值的行。
所以像这样:
where field1 like 'string' and field2 is null or field2 = 123
在 JS 客户端中可以吗?
您可以使用 bool/must/should
along with the exists and wildcard query
的组合
{
"query": {
"bool": {
"must": [
{
"wildcard": {
"field1": "string*"
}
},
{
"bool": {
"should": [
{
"term": {
"field2": 123
}
},
{
"bool": {
"must_not": {
"exists": {
"field": "field2"
}
}
}
}
]
}
}
]
}
}
}
我想创建一个可以使用匹配的查询,并且该匹配应该只考虑另一个字段值为 null 或某个特定值的行。
所以像这样:
where field1 like 'string' and field2 is null or field2 = 123
在 JS 客户端中可以吗?
您可以使用 bool/must/should
along with the exists and wildcard query
{
"query": {
"bool": {
"must": [
{
"wildcard": {
"field1": "string*"
}
},
{
"bool": {
"should": [
{
"term": {
"field2": 123
}
},
{
"bool": {
"must_not": {
"exists": {
"field": "field2"
}
}
}
}
]
}
}
]
}
}
}