我已将一些数据加载到elasticsearch中并针对数据编写查询,但结果包含匹配查询的所有数据。是否可以过滤结果以显示特定字段?
实施例 查询以查找特定国家/地区的所有记录,但返回注册号列表。
所有数据都可用弹性搜索,但每次比赛都会得到完整的json记录。
我在SENSE中运行此查询(在Kibana 4.5.0中)。
查询是......
GET _search
{
filter_path=reg_no.*,
"fields" : ["reg_no"],
"query" : {
"fields" : ["country_cd", "oprg_stat"],
"query" : "956 AND 9074"
}
}
如果我删除这两行
filter_path=reg_no.*,
"fields" : ["reg_no"],
查询运行但会带回所有数据。
答案 0 :(得分:1)
尝试此查询:
POST _search
{
"_source": [
"reg_no"
],
"query": {
"bool": {
"filter": [
{
"term": {
"country_cd": "956"
}
},{
"term": {
"oprg_stat": "9074"
}
}
]
}
}
}