2016-07-01 12 views
1

私はSolrを初めて利用しています。私は自分のsolr(5.1.1)内のいくつかのデータを索引付けしました。私のデータにはcontract_yearのような値があります。Solr:無効な日付文字列: '1996'

contract year: 1996 
contract year: 2000 

契約年のフィールドタイプは "int"です。フィールドタイプを「年」または「年」に変更したいだけです。そのため、schema.xmlを編集し、契約年のフィールドタイプを「int」から「date」に変更しました。これを実行すると、私のデータを再インデックスした後、私はこのエラーを得た:

Invalid Date String:'1996' 

は、私が「日付」にフィールドタイプを変更し、フォーマットを変更することなく、

contract year: 1996 

のように同じ結果を得るために何をすべき日付の。私はその日から唯一の年(yyyy)を取得したい。あなたの助けのための おかげ

答えて

3

Nupur、Solrのdateフィールドのサポートは、あなたは、Apache Solrのに受け入れられるために、このような形式で日付を変換する必要があります。だから、このyyyy-MM-dd'T'HH:mm:ss'Z'ような形式である形式のみ。

+0

「yyyy」形式を「yyyy-MM-dd'T'HH:mm:ss'Z '」に変換する方法を教えてください。 – Rose

+0

1年しか経過していないか確認し、日付フィールドではなく通常のフィールドに渡します。そして、はい、完全な本格的な日付形式で年の値を変換することはほとんど意味がありません。文字列として保存するためにtext_generalフィールドのような日付フィールドを使用しないでください。しかし、年度の範囲をフィルタリングしたい場合は、再考する必要があります。 –

+0

ありがとう@codechat – Rose

関連する問題