无法在 Kibana 6.8.0 搜索栏中将 "OR" 与 "NOT _exists_" 一起使用
Cannot use "OR" with "NOT _exists_" in Kibana 6.8.0 search bar
我正在尝试在 Kibana 搜索栏中创建一个查询来检索一些特定文档。
目标是获取在 2019-10-08 之前具有字段 "myDate" 或 "myDate" 不存在的文档。
我有满足一个或另一个条件的文件。
我首先创建了这个查询:
myDate:<=2019-10-08 OR NOT _exists_:myDate
但是没有返回文件。
因为不行,我尝试了一些网上找到的其他方法:
myDate:<=2019-10-08 OR NOT (_exists_:myDate)
myDate:<=2019-10-08 OR !(_exists_:myDate)
myDate:<=2019-10-08 OR NOT (myDate:*)
但是,还是没有结果。
当我使用 "OR" 条件的 "part" 时,它完美地工作:我得到的文件有 myDate<=2019-10-08 或没有"myDate" 字段已满。
但是当我尝试两种情况时,我没有得到任何文件。
我必须只使用搜索栏来查找这些文档,既不使用 elasticsearch rest 查询也不使用 kibana 过滤器。
感谢您的帮助:)
以下查询有效。使用 kibana 中的 Inspect
按钮查看实际触发的查询并确保您也使用了正确的索引模式。
(myDate:<=2019-12-31) OR (NOT _exists_:myDate)
查看 Query DSL documentation for Boolean operators 以更好地理解不同的用例
我正在尝试在 Kibana 搜索栏中创建一个查询来检索一些特定文档。 目标是获取在 2019-10-08 之前具有字段 "myDate" 或 "myDate" 不存在的文档。 我有满足一个或另一个条件的文件。
我首先创建了这个查询:
myDate:<=2019-10-08 OR NOT _exists_:myDate
但是没有返回文件。
因为不行,我尝试了一些网上找到的其他方法:
myDate:<=2019-10-08 OR NOT (_exists_:myDate)
myDate:<=2019-10-08 OR !(_exists_:myDate)
myDate:<=2019-10-08 OR NOT (myDate:*)
但是,还是没有结果。
当我使用 "OR" 条件的 "part" 时,它完美地工作:我得到的文件有 myDate<=2019-10-08 或没有"myDate" 字段已满。
但是当我尝试两种情况时,我没有得到任何文件。
我必须只使用搜索栏来查找这些文档,既不使用 elasticsearch rest 查询也不使用 kibana 过滤器。
感谢您的帮助:)
以下查询有效。使用 kibana 中的 Inspect
按钮查看实际触发的查询并确保您也使用了正确的索引模式。
(myDate:<=2019-12-31) OR (NOT _exists_:myDate)
查看 Query DSL documentation for Boolean operators 以更好地理解不同的用例