为了账号安全,请及时绑定邮箱和手机立即绑定

如何从文档中计算今天日期和日期之间的日差,但在弹性搜索脚本中消除时间

如何从文档中计算今天日期和日期之间的日差,但在弹性搜索脚本中消除时间

PHP
胡子哥哥 2022-06-11 10:10:47
我尝试了这个解决方案并且它有效,但它也需要时间戳......我想消除时间戳......"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 }

         }

     }

}

一旦找到更简单的方法,我将立即更新我的解决方案。


查看完整回答
反对 回复 2022-06-11
  • 1 回答
  • 0 关注
  • 71 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信