Solr中的日期/時間表示
阿新 • • 發佈:2018-11-10
摘要: Solr的日期欄位(TrieDateField 和DateRangeField)可以對一個時間點以毫秒精度表示。
格式
Solr中的日期有很嚴格的格式限制:
YYYY-MM-DDThh:mm:ssZ
- YYYY 表示年
- MM 表示月份
- DD 表示天
- hh 表示小時,24小時制
- mm 表示分鐘
- ss 表示秒鐘
- Z 代表時區是UTC
比如:
2017-01-22T17:33:18Z
- 時區不能換,只能是UTC
- 更精細的表示時間可以是:2017-01-22T17:33:18.333Z
查詢
由於Solr的時間中有一個特殊符號 冒號(:),在查詢的時候可以使用下面幾種方式對一個時間欄位查詢
datefield:2017-01-20T17:33:18.333Z
datefield:”2017-01-20T17:33:18.333Z”
datefield:[2017-01-20T17:33:18.333 TO *]
時間區間表示
- 2017-01 2017年整個1月
- 2017-01T13 2017年整個1月每天13:00到14:00
- [2017-01-01 TO 2017-01-22] 2017年1月1號到22號
- [2017 TO 2017-01-22] 2017年1月1號到22號
- [ * TO 2017-01-22] 2017年1月22號之前
計算時間
Solr支援一些簡單的數學計算,並且內建了一些表示式
- NOW 當前時間
- NOW+2MONTHS 之後的兩個月時間內
- NOW-1DAY 一天前
- NOW/HOUR 從這個小時開始