0

日時フィールドを含む複数のフィールドを検索する必要があります。

検索クエリには、さまざまな形式で指定された日付値が含まれる場合と含まれない場合があります。

  • 4月4日
  • 2013/04/04
  • 2013-04-04

クエリ文字列には、日時に変換できない用語が含まれている場合があります。

エラスティック検索を使用してそのタイプのクエリをサポートする方法はありますか?

4

1 に答える 1

3

ここで、調査中に掘り下げたもの:

Elastic search のmulti_field機能を使用します。日付型機能に文字列検索可能なテキストフィールドを追加しました。

日付型フィールドに使用するマッピングは次のとおりです。

   "TransactionDate":{
      "type":"multi_field",
      "fields":{
         "TransactionDate":{
            "type":"date",
            "format":"YYYY-MM-dd HH:mm:ss||MM/dd/yyyy||yyyy/MM/dd",
            "index":"not_analyzed"
         },
         "formatted":{
            "type":"string",
            "index":"analyzed"
         }
      }
   }

次に、TransactionDate.formattedテキスト フィールドを使用する検索クエリにフィールドを含めることができます。

それが他の誰かを助けることを願っています。

于 2013-04-05T17:32:25.873 に答える