1

在 Solr 中,是否可以搜索给定月份中的所有记录,而不考虑年份或日期?例如,下面的片段将匹配 01.01.2013 上的所有内容 - 我想要做的是找到任何一年出现在 01.01 上的所有内容。

date:2013-01-01T00:00:00Z
4

1 回答 1

1

不,没有日期字段。Solr 只能处理日期范围,就像它只能处理数字范围或字符串范围一样。要求 Solr 仅根据当月的第一天查询日期字段就像要求它查询数字字段并且只给您奇数,或者查询字符串但只查询以元音开头的字符串。

您需要做的是将日期分解为月和日组件,然后查询这些组件。如果您的基本字段是sale_date,您还需要sale_monthsale_day。然后,您可以查询month:3以获取任何 3 月发生的所有事情,或者day:1获取任何一个月的第一天的所有内容,或者month:3 AND day:1获取任何 3 月 1 日发生的所有事情。

于 2013-01-11T13:44:14.853 回答