ElasticSearch 數據類型


  1、范圍數據類型

    支持以下范圍類型:

    integer_range : 一系列帶符號的32位整數,最小值為,最大值為

    float_range:一系列單精度32位IEEE 754浮點值。

    long_range:一系列帶符號的64位整數,最小值為,最大值為

    double_range:一系列雙精度64位IEEE 754浮點值。

    date_range:系統歷元以來的一系列日期值表示為無符號的64位整數毫秒。

    ip_range:支持IPv4或IPv6(或混合)地址的一系列ip值。

    以下是配置各種范圍字段映射的示例:

PUT range_index
{
  "mappings": {
    "my_type": {
      "properties": {
        "expected_attendees": {
          "type": "integer_range"
        },
        "time_frame": {
          "type": "date_range", 
          "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
        }
      }
    }
  }
}

PUT range_index/my_type/1
{
  "expected_attendees" : { 
    "gte" : 10,
    "lte" : 20
  },
  "time_frame" : { 
    "gte" : "2015-10-31 12:00:00", 
    "lte" : "2015-11-01"
  }
}

    以下是名為“time_frame”的date_range字段的date_range查詢示例

POST range_index/_search
{
  "query" : {
    "range" : {
      "time_frame" : { 
        "gte" : "2015-10-31",
        "lte" : "2015-11-01",
        "relation" : "within" 
      }
    }
  }
}

    

 

  2、日期數據類型

    JSON沒有日期數據類型,所以Elasticsearch中的日期可以是:

    1、包含格式化日期的字符串,例如 “2015-01-01”或“2015/01/01 12:10:30”

    2、一個代表毫秒數的長數字

    3、一個代表秒的整數

    在內部,日期轉換為UTC(如果指定時區)並存儲為表示毫秒以后的長數字。

    日期格式可以自定義,但如果沒有指定格式,則使用默認格式:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM