沙师弟,师父的充电器掉了

date_nanos 数据类型使用出现问题

Elasticsearch | 作者 songzi | 发布于2022年06月16日 | 阅读数:1233

es版本为7.17.1
使用date_nanos数据类型来存放纳秒级别时间戳  排序时发现 2016年5月转换为的纳秒数 比2016年1月转为为的纳秒数还要少 导致排序出现问题
以下为使用的语句
PUT date_test
{
  "mappings": {
    "properties": {
      "date":{
        "type": "date_nanos",
        "format": "yyyy-MM-DD||yyyy-MM-DD HH:mm:ss||yyyy-MM-DD HH:mm:ss.SSS||yyyy-MM-DD HH:mm:ss.SSSSSS||yyyy-MM-DD HH:mm:ss.SSSSSSSSS||epoch_millis"
      }
    }
  }
}
 
POST date_test/_doc
{
  "date":"2016-05-16 17:08:52.000000623"
}
 
 
POST date_test/_doc
{
  "date":"2016-01-17 17:08:52.000000533"
}
 
 
GET date_test/_search
{
  "size": 100,
  "sort": [
    {
      "date": {
        "order": "asc"
      }
    }
  ]
}
 
30a5fb093444bada499c0888a51f412.png
已邀请:

Charele - Cisco4321

赞同来自:

泥这个问题和纳不纳秒没关系。
 
把yyyy-MM-DD改成yyyy-MM-dd
 

要回复问题请先登录注册