2013-04-10 61 views
3

我面臨的情況是,我需要從Solr服務器獲取所有那些條件爲field_1.value != field_2.value的記錄。如何檢查兩個Solr字段的相等性?

這裏field_1field_2是我的模式的Solr字段名稱。我試過!(creation_date = last_edited_date)但它不起作用。這會在執行查詢時返回Solr服務器包含的所有Solr文檔。

任何人都可以請分享如何從Solr那裏得到這些記錄!(creation_date = last_edited_date)

回答

2

AFAIK日期比較不像其他領域那樣直截了當。

有跡象表明,想到

  • 再來計算字段(布爾)creation_date_equals_last_edited並將其設置爲true匹配它,而索引文件的兩個選項。使用此字段作爲過濾條件。

  • 使用frange,inclsub來計算查詢時間。一個例子 -

    FQ = {!FRANGE L = 0含= FALSE}子(CREATION_DATE,LAST_EDITED_DATE)

如果你想在日期DIFF公差(由於邊際時間戳差),你可以可能使用scale函數查詢。

參考:Solr Function QUery