簡體   English   中英

如何從Lucene索引中刪除舊文檔(按Date參數過濾)

[英]How to delete old documents from lucene index (filter by Date parameter)

我是Lucene的新手(我正在使用JAVA),並且我嘗試閱讀所有現有的答案,以便找到解決我的問題的方法。 不幸的是,我沒有解決我的問題,所以我嘗試再次問你這個問題:

我有一個Date參數。 我需要刪除Lucene索引中早於該Date參數的所有文檔。 我該怎么做? 我發現了一種使用isDeleted方法的解決方案,但是不幸的是,目前不推薦使用。 感謝您的建議!

您可以使用IndexWriter.DeleteDocuments方法刪除與任何查詢匹配的所有文檔,例如:

String dateString = DateTools.dateToString(myCutoffDate, DateTools.Resolution.DAY);
Query dateQuery = TermRangeQuery.newStringRange("dateField", null, dateString, false, false);
myIndexWriter.DeleteDocuments(dateQuery);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM