文章目录

  • 1. 问题描述
  • 2. 问题分析
    • 2.1 在参数里面配置时区
    • 2.2 过滤字段为文本时的分词对时区造成了影响
    • 2.3 now函数的问题
  • 3. 问题解决思路
  • 4. 备注

1. 问题描述

  • ES的默认时区是0区,而我们是在东八区。进行过滤时,我们采用了now函数。结果发现过滤结果不对,当天下午十点半的一条数据没有查出来。然后尝试在less than or equal的参数加了1d或者加了8h。过滤结果就是对的了。

2. 问题分析

  • 我们在东八区,参数加了8h之后查询结果正确,基本可以确定是时区的配置问题。

2.1 在参数里面配置时区

  • 开始先尝试加上时区的配置,结果没有起效。

2.2 过滤字段为文本时的分词对时区造成了影响

  • 看到一篇博客:ElasticSearch6.X时间范围查询无效bug

    • 博客里面说到是过滤字段的分词原因。但是这里说的是ES6.x。我们用的版本是7.x,并且这个字段的类型是date。

2.3 now函数的问题

  • 然后我们去看了ES的官方文档,里面提到,now的值不受time-zone影响

    翻译一下就是
  • 确定是now这个方法的问题

3. 问题解决思路

  • 既然使用这个now会有问题,那我们就不使用他了。改为使用时间戳的形式,过滤结果也是对的。至于时区的问题,我们可以先在程序计算好时区,再把参数传进来。

4. 备注

  • 一开始本来想要粗暴一点,直接在参数加上8h。但是大佬告诉我,加8h的话,在汇聚成直方图的时候,直方图的还是不对的。加1d倒是可以暂时显示正确的效果,但是很明显不要这么弄,这样的参数会把多的数据查进来。

关于在ElasticSearch中使用now函数进行时间范围过滤查询的问题相关推荐

  1. 【ElasticSearch】ElasticSearch 中使用衰减函数来完美你的搜索结果

    1.概述 转载:ElasticSearch 中使用衰减函数来完美你的搜索结果 最近的项目在原有的搜索需求增加功能 ElasticSearch 7.6 (请注意,大版本不同可能参数不同) 原有搜索:简单 ...

  2. 在SQL中使用convert函数进行日期的查询

    曾经遇到这样的情况,在数据库的Meeting表中有PublishTime (DateTime,8)字段,用来存储一个开会时间,在存入时由于要指明开会具体时间,故格式为yyyy-mm-dd hh:mm: ...

  3. 图解Elasticsearch中的_source、_all、store和index属性

    为什么80%的码农都做不了架构师?>>>    Elasticsearch中有几个关键属性容易混淆,很多人搞不清楚_source字段里存储的是什么?store属性的true或fals ...

  4. oracle取第一位,Oracle中的substr()函数和INSTR()函数

    1)substr函数格式   (俗称:字符截取函数) 格式1: substr(string string,int a,int b); 格式2:substr(string string,int a) ; ...

  5. Oracle中的instr()函数 详解及应用

    1)instr()函数的格式  (俗称:字符查找函数) 格式一:instr( string1, string2 )    /   instr(源字符串, 目标字符串) 格式二:instr( strin ...

  6. 如何用你最熟悉的 SQL 来查询 Elasticsearch 中的数据?

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! Elasticsearch 是一个全文搜索引擎,具有您期 ...

  7. 【Elasticsearch】Elasticsearch中的相似度评分介绍

    1.概述 转载:Elasticsearch中的相似度评分介绍 本文要点 相关性得分是一个搜索引擎的核心,了解它的工作原理对创建一个好的搜索引擎至关重要. Elasticsearch 使用了两种相似度评 ...

  8. laravel Scout包在elasticsearch中的应用

    laravel Scout包在elasticsearch中的应用 2017-04-05 15:14 by 轩脉刃, ... 阅读, ... 评论, 收藏, 编辑 laravel Scout包在elas ...

  9. 在Elasticsearch中回测隨機(Stochastic)指標交叉交易策略

    之前的文章"在Elasticsearch 中回测 RSI 交叉策略",介紹在Elasticsearch中如何回測 相对强弱指数(RSI)指标交叉交易策略.在本文中,我们将实施随机( ...

  10. Elasticsearch中的Zen Discovery选主流程

    文章目录 背景 为什么使用主从模式? 选举算法 什么时候触发选主? 选主过程 选举临时Master 投票与得票的实现 确立Master或加入集群 选举完成 elasticsearch中的Discove ...

最新文章

  1. SQL Server 存储过程的分页方案比拼
  2. 性能比GPU高100倍!华人教授研发全球首个可编程忆阻器AI计算机
  3. Ubuntu系统在VMware虚拟机中显示显示过小
  4. bzoj3920: Yuuna的礼物(莫队+分块套分块)
  5. 我的Android进阶之旅------Android Studio 快捷键整理分享
  6. springboot1.5.10兼容高版本6.1.1elasticsearch
  7. 患者信息SQL v1
  8. localdatetime获得时间搓_得用户者得天下,一禅小和尚×往事若茶如何获得消费者认同...
  9. HTML窗口与对话框
  10. SHELL字符串使用总结
  11. 如何让地面不起灰_水泥地面起灰怎么办?
  12. LabVIEW编程LabVIEW开发雷赛SMC6480运动控制模块例程与相关资料
  13. iOS开发之Block详解
  14. GIT 知识收集-GIT banch 没有显示
  15. 纯千兆电口模块和自适应电口模块的区别
  16. 全加器高进位和低进位的理解
  17. RISC-V “异军”突起,英特尔:消灭不了就加入它
  18. NB-IOT联网通信
  19. ERROR: You appear to be running an X server; please exit X before installing.
  20. 打包后index.html路径错误,解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题...

热门文章

  1. 博客广告 何乐而不为?
  2. 如何搭建WordPress个人博客网站?
  3. PF_PACKET说开去
  4. 免费苹果账号(apple id)申请ios证书p12真机调试
  5. ubuntu firefox flash 插件安装
  6. firefox linux 关闭,Firefox 的 Flash 被禁用的解决方法
  7. 用matlab2012制作机器人,利用matlab建立简单的机器人模型的步骤
  8. MySQL复制表结构、表数据的方法
  9. CF卡是什么,CF卡数据丢了还能找回吗
  10. C++算法之排列算法