一个ES的一个统计查询,请求给为大佬? 400 报错
{ "name":"四川", "city":[ { "name":"成都" "Region":[ { "name":"成华区" }, { "name":"青羊区" } ] }, { "name":"巴中" "Region":[ { "name":"巴中区1" }, { "name":"巴中区12" } ] } ] }
我有一个ES的数据结构是这样的
现在要统计一共有多少个区,怎么写es语法呢?请求各位大佬。
额,你这个可能有个问题。
如果你这个是一条记录的话,通过搜索API查出来是记录数1条,也就是hits.而不是你这个文档里有多少个区。
就像搜索引擎里搜索字段,搜索引擎只会告诉你有多少条记录符合你的要求,而不是某一条记录内有多少个你搜索的关键字。
所以如果要统计,你把这个数据获取到,再自己写代码去分析有多少个区才是靠谱的做法。
######就像 gammey 说的,你如果要用es做查询和统计,那么应该将数据拆分出来,每个区一条数据,你这样的数据结构不太适合做es的查询统计
######回复 @Mr_K : 存储在es中的数据最好是平铺的,这样有利于检索,结构化功能应该放在其他业务中######没办法,索引结构就是这样的。。。。我可以统计出有多少省份和城市,但是统计不出有多少区。######你在成都上班吗?是巴中人吗
######:joy:版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。