gpt4 book ai didi

elasticsearch - 如何检查 Elasticsearch 脚本中的真实条件?

转载 作者:行者123 更新时间:2023-12-04 07:18:54 28 4
gpt4 key购买 nike

我有一个 bool 字段的文档

 {
"field1" : true
}

现在我想检查“field1”是否为真,如果为真则运行查询。
我如何使用 Elasticsearch 中的脚本来做到这一点?

最佳答案

Daniel 的方法优于字面使用脚本,因为它会明显更快,但如果您需要在脚本中执行此操作,则需要检查索引值是否为 'T'。或 'F'在 Elasticsearch 1.x 中。在 Elasticsearch 2.x 及以上版本中,Lucene 改为使用更传统的 10 .

ES 2.x(及以上):

{
"query" : {
"bool" : {
"filter" : [ {
"script" : {
"inline" : "doc['field1'].value == 1"
}
} ]
}
}
}

ES 1.x:
{
"query" : {
"filtered" : {
"filter" : {
"script" : {
"script" : "doc['field1'].value == 'T'"
}
}
}
}
}

使用脚本是一个坏主意,除非您需要做一些没有脚本就无法完成的事情,例如同时比较字段以确保它们具有相同的值。

关于elasticsearch - 如何检查 Elasticsearch 脚本中的真实条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31233185/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com