【发布时间】:2018-09-18 06:28:48
【问题描述】:
有没有办法在搜索结果的末尾附加不匹配的文档?
我一直在做一个项目,我们需要按地理位置数据搜索文档,但有些文档没有可用的地理位置数据。因此,这些文档没有在搜索结果中返回。
有没有办法在搜索结果的末尾附加不匹配的文档?
示例映射:
PUT /my_locations
{
"mappings": {
"_doc": {
"properties": {
"address": {
"properties": {
"city": {
"type": "text"
},
"location": {
"type": "geo_point"
}
}
}
}
}
}
}
地理位置数据:
PUT /my_locations/_doc/1
{
"address" : {
"city: "XYZ",
"location" : {
"lat" : 40.12,
"lon" : -71.34
}
}
}
没有地理位置的数据:
PUT /my_locations/_doc/2
{
"address" : {
"city: "ABC"
}
}
有什么方法可以执行地理距离查询,选择带有地理位置数据的文档并在结果末尾附加非地理文档?
【问题讨论】:
标签: elasticsearch