gpt4 book ai didi

stored-procedures - ElasticSearch存储过程

转载 作者:行者123 更新时间:2023-12-03 00:56:54 25 4
gpt4 key购买 nike

假设我有结构如下的文件:

{
name:"some_name",
salary:INT_VAL,
date:YYYY.dd.MMTHH:mm:sssZ,
num_of_months:INT_VAL
}

现在,我要查询一个具有 flex 的查询,该查询将选择按条件 薪金* num_of_months 排序的前10个文档。
我怎样才能做到这一点?
还有,如果我想按标准排序并在其中加上一些逻辑,该怎么办?喜欢
if (num_of_months < 5) 
then criteria = salary*100 ;
elseif criteria = salary*200;
endif
sort_by_criteria()

最佳答案

进行Sort with a script将使您能够对数据进行计算并以正确的顺序返回:

GET /myindex/mytype/_search?pretty
{
"sort" :{
"_script" : {
"type" : "number",
"lang": "expression",
"script" : "doc['num_of_months'].value < 5 ? doc['salary']*100 : doc['salary']*200",
"order":"desc"
}
},
"size": 10
}

注意使用 ternary operator来执行If语句。

关于stored-procedures - ElasticSearch存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43108781/

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