2017-07-17 40 views
2

我試圖從數據庫中查詢一定量的記錄,但對日期數學有點困惑。這裏是我的塊中的一個示例:彈性搜索日期數學問題,不確定的界限

var searchParams = { 
        "query": { 
         "bool" : { 
          "must" : [ 
           { "term": { } }, 
           { "term": { } }, 
           { "range": { 
            "dateUTC": { 
             "gt": "now-7d/d", 
             "lt": "now/d", 
            "format": "basic_date_time" 
            } 
           } 
           } 
          ] 
         } 
        } 
       }; 

現在,如果我想從今天才查詢所有的結果,我會用GT:現在-1D/d,LT:現在/ d。或者我會使用gt:now-2d/d,lt:now/d,就像一天左右的邊緣一樣?我試圖製作的程序旨在查詢今天,昨天等所有結果,從第二天開始到當天午夜,我是否必須爲此更改日期數學?

感謝

回答

0

我覺得這個職位的答案是很清楚的:https://discuss.elastic.co/t/several-date-math-questions/27453/3

雖則回答您的問題:

  • 「從今天才查詢到所有的結果」:gt: now/d, lt:now
  • 從今天午夜到2天前午夜:gt:now - 2d/d, lt:now/d

的/ d這裏以公式中計算的一天,調整時間至午夜,所以如果現在是七月0時31分43秒 18日,now/d產量七月00:00:00 18日