在弹性search中使用NOT和OR
这是我在弹性search中使用的查询来过滤满足一个条件或不满足其他条件的logging。
{ "query": { "query_string": { "query": "(NOT col1: \"val1\") OR (col2: val2)", "analyze_wildcard": true }}}
问题是我不能在nodejs中编写等效的语法来提取信息。 我们不能使用must_not,因为它是OR条件
你将在数组中创build两个条件,因为如果有人匹配,你将得到结果的logging,你将不得不使用must match
, must match
must_not match
{ "query": { "bool": { "should": [ { "bool": { "must_not": { "match": { "col1": { "query": "val1", "type": "phrase" } } } } }, { "match": { "col2": { "query": "val2", "type": "phrase" } } } ] } } }
- ElasticSearch JS客户端search
- ElasticSearch – 聚合/分组:通过sorting和分页
- 如何通过弹性search在expressjs中解决Not Found消息
- 将数据从Node.jsstream上传到ElasticSearch数据库
- 如何运行elasticsearch-hq?
- 如何改变Elasticsearch 1.4中嵌套对象的types
- AWS Lambdafunction(节点) – 自定义超时logging
- 弹性search创build基于时间的索引
- 对elasticsearch的GET请求中的'request_cache = true'不会创buildcaching