Elasticsearch-日期类型
Elasticsearch-日期类型
date类型用于存储日期和时间。它是这样运作的:通常提供一个表示日期的字符串,例如2019-06-25T22:47。然后,ES解析这个字符串,然后将其作为long的数值存入Lucene的索引。该long型数值是从1970年1月1日00:00:00 UTC(UNIX纪元)到所提供的时间之间已经过去的毫秒数。
当搜索文档的时候,仍然提供date的字符串,在后台ES将这些字符串解析并按照数值来处理。这样做的原因是和字符串相比,数值在存储和处理时更快。
date字符串的数据格式是通过format选项来定义的,ES默认解析ISO 8601的时间戳。
ISO8601是一种交流日期和时间相关数据的国际标准,由于RFC 3339而广泛运用于时间戳。ISO 8601日期张下边这样:
2019-06-25T22:51:45.453-03:00
包含了亚秒和时区。
使用format选项来指定日期格式的时候,有以下两种选择
(1) 使用预定义的时间格式。例如,date格式解析2019-06-25这样的日期。
(2) 设置自己定制的格式。可以指定时间戳所遵循的模式。例如,指定MMMYYYY来解析 jun 2019这样的日期。
使用定制的时间格式
定制版:’MMM DD YYYY’
在索引music的album类型下,添加新的属性映射,类型为date,format自定义
curl -XPUT 'localhost:9200/music/_mapping/album' -d '{ "album":{ "properties":{ "format_date":{ "type":"date", "format":"MMM DD YYYY" } } } }'
新增一条数据
curl -XPUT 'localhost:9200/music/album/4' -d '{ "name":"十一月的肖邦", "date":"2005-11-24T22:20", "format_date":"Nov 24 2005" }'
分类:
Elasticsearch
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示