2013-04-10 62 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