0
我想了解RavenDB中的日期範圍過濾器。當我嘗試在特定日期範圍內查詢記錄如下:包含RavenDB日期範圍查詢不包含匹配的日期值如預期
Date:[2015-08-18T06:00:00.000Z TO 2015-08-19T06:00:00.000Z]
文檔類型被查詢包含以下記錄(這我期待通過上述查詢返回)。
{
"yada_yada": "stuff",
"Date": "2015-08-18T06:00:00Z",
"Source": "Joe Bob",
"Comments": "The force is strong with this one.",
"Id": "agentactivities-1"
}
查詢返回沒有結果。我試圖修改查詢,例如Date:[2015-08-18T06:00:00Z TO 2015-08-19T06:00:00.000Z]
(刪除十進制值),結果相同。但是,如果我刪除了Z
(日期:[2015-08-18T06:00:00.000 TO 2015-08-19T06:00:00.000Z]),則查詢將返回該記錄。此外,修改一小時前的起始範圍arg似乎也可以工作(Date:[2015-08-18T05:00:00.000Z TO 2015-08-19T06:00:00.000Z]
)
我在這裏錯過了什麼?據我瞭解,使用[]
符號應導致包含範圍,爲什麼不查詢返回此記錄?
感謝您的響應。你是對的,在文檔_both_上修改日期格式,並且帶有7個小數點值的查詢確實將問題與結果「修復」了。不過,我認爲有關日期值比較的更深層次的問題,我認爲這是一個Lucene.NET實現細節。根據你對Lucene(.NET)的瞭解,你知道是否可以考慮使用PR來改進日期值的比較,以便'2015-08-18T05:00:00.000Z == 2015-08-18T05:00 :00.0000000Z'? –
如果您發送PR,我們一定會考慮它 –
我會很樂意研究它。我是否認爲這是Lucene.Net實現細節,還是應該看RavenDB?我不熟悉這兩個庫的內部,所以你可以提供幫助我到達的任何提示將不勝感激。 –