我尝试了这个解决方案并且它有效,但它也需要时间戳......我想消除时间戳......"filter": { "script": { "script": { "inline":"(new Date().getTime() - doc['current_edd'].date.getMillis()) / (1000 * 60 * 60 * 24) == params.missDelby", "params": { "missDelby": 1 } } } }
1 回答
MMMHUHU
TA贡献1834条经验 获得超8个赞
使用这个简单的计算可以使用一些数学来删除时间部分
long t1 = new Date().getTime();
t1 -= t1 % (24 * 3600 * 1000); //24 * 3600 * 1000 total milliseconds in a day
您可以像这样更新您的查询
"filter": {
"script": {
"script": {
"inline": "long t1 = new Date().getTime();
long t2 = doc['PostCodeDate'].value.getMillis();
t1 -= t1 % (24 * 3600 * 1000);
t2 -= t2 % (24 * 3600 * 1000);
return (t1 - t2) / (24 * 3600 * 1000) == params.missDelby",
"params": { "missDelby": 1 }
}
}
}
一旦找到更简单的方法,我将立即更新我的解决方案。
- 1 回答
- 0 关注
- 71 浏览
添加回答
举报
0/150
提交
取消