ElasticSearch 数值类型的字段 作为条件过滤失败的问题分析

今天测试给提了个bug,说是当把地图移到边缘位置之后 左边列表显示的数据和数据库中对应不上,如下所示:
在这里插入图片描述

因为这个搜索是在elasticsearch上面进行的,然后就用对应的语法在es上和pg库里面分别进行了查询。
其中在es上查询的结果如下图所示,有2166条:
在这里插入图片描述
在pg库上查询的结果如下图所示,有1325条:
在这里插入图片描述
emmm,开始怀疑自我了,难道是我的es查询脚本有问题,又仔细查了下 es的查询语法,发现查询语句并没有写错呀。

然后开始怀疑是否是es的字段类型不对导致查询结果不对,发现我们定义的latitude和longitude都为long类型的。在这里插入图片描述
在这里插入图片描述

最后试着把long换成float又查询了一遍,至此发现数据正确啦。
(es有一个很坑的地方,es里面如果字段是long类型的,但是小数仍然可以存进去)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值