Solrでは、年や日を問わず、特定の月のすべてのレコードを検索できますか?たとえば、以下のスニペットは2013年1月1日のすべてに一致します。私がやりたいのは、任意の年の01.01に表示されたすべてを検索することです。
date:2013-01-01T00:00:00Z
Solrでは、年や日を問わず、特定の月のすべてのレコードを検索できますか?たとえば、以下のスニペットは2013年1月1日のすべてに一致します。私がやりたいのは、任意の年の01.01に表示されたすべてを検索することです。
date:2013-01-01T00:00:00Z
いいえ、日付フィールドはありません。Solrは、数値の範囲または文字列の範囲のみを処理するのと同じように、日付の範囲のみを処理できます。Solrに月の最初の日に基づいて日付フィールドのみをクエリするように要求することは、数値フィールドでクエリを実行して奇数のみを提供するように要求することや、文字列をクエリするが母音で始まるものだけをクエリすることと似ています。
あなたがする必要があるのは、日付を月と日のコンポーネントに分割し、それらをクエリすることです。ベースフィールドがsale_date
の場合、とも必要sale_month
になりsale_day
ます。次に、クエリを実行しmonth:3
て、任意の3月に発生したすべてを取得するか、任意の月day:1
の初日にすべてmonth:3 AND day:1
を取得するか、任意の3月1日に発生したすべてを取得できます。