elasticsearch 搜索结果如何只返回需要的字段?

如题.

就是 一条索引, 有 a, b, c, d等多个字段, 现在我搜索东西, 只需要返回结果只给出a, b两个字段就可以了; c, d等字段我并不需要(假设c很长, 浪费内存), 如何实现?

sphinxsearch 有这个功能, 但elasticsearch第一次用, 查了半天文档也没发现怎么做...google也没结果

阅读 7.7k
3 个回答

set return fields

filters = [pyes.filters.TermFilter('ext', 'pdf')]
_filter = pyes.filters.ANDFilter(filters)
q = pyes.FilteredQuery(pyes.MultiMatchQuery(['filename', 'content'], u'pdf'), _filter)
s = Search(q, fields=['filename', 'ext'],
sort=....)
ms = conn.search(s, indices='test02', doc_types='resource', start=0, size=10)
for m in ms:print m

隐藏的有点深...已经解决, 谢谢各位

google searsh filter

_field指定

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏