假设我的文档索引如下:
{
category: "fruits",
items: [
{
name: "Apple",
shape: "Round",
color: "red"
},
{
...
}
]
}
假设我想搜索所有字段,但只返回:
items
仅限字段items
字段,但只有name
和shape
字段(不是列表中的color
字段)答案 0 :(得分:2)
您可以通过指定保留的_source
field来过滤/删除source
(整个文档)中的字段:
要仅检索items
,请指定如下过滤器:
{
"_source" : "items.*",
"query" : ...
}
要检索感兴趣的特定items
,有多种方法,但如果您全部了解它们(而不是需要通配符排除支持):
{
"_source" : [ "items.name", "items.shape" ],
"query" : ...
}
或者,如果不是那么简单:
{
"_source" : {
"include" : [ "items.*" ],
"exclude" : [ "items.color" ]
}
"query" : ...
}
这提供了最大的灵活性。
答案 1 :(得分:1)
您可以限制在查询中使用字段..比如
{
Query:{
Bla bla bla
},
Fields :["items . name", "items.shape"]
}