在Solr中,是否可以搜索给定月份中的所有记录,而不管年份或日期?例如,下面的代码段将匹配01.01.2013上的所有内容 - 我想要做的就是找到01.01上任何一年出现的所有内容。
date:2013-01-01T00:00:00Z
答案 0 :(得分:1)
不,不是日期字段。 Solr只能处理日期范围,就像它只处理数字范围或字符串范围一样。要求Solr仅根据一个月的第一天查询日期字段,就像要求它在数字字段上查询而只给你奇数,或查询字符串而只查询以元音开头的字符串。
您需要做的是将日期分解为月份和日期组件,然后查询这些组件。如果您的基本字段为sale_date
,则还需要sale_month
和sale_day
。然后,您可以在month:3
查询以获取3月份发生的所有事件,或day:1
并获取任意月份第一天的所有内容,或month:3 AND day:1
获取3月1日发生的所有事情