我怎样才能得到这个简单的SQL查询运行在elasticsearch?elasticsearch匹配两个字段
SELECT * FROM [MYTYPE其中A = -23.4807339和b = -46.60068
我真的有与它的语法,多比对查询并不在我的情况下工作的烦恼,我应该使用哪种查询类型?
我怎样才能得到这个简单的SQL查询运行在elasticsearch?elasticsearch匹配两个字段
SELECT * FROM [MYTYPE其中A = -23.4807339和b = -46.60068
我真的有与它的语法,多比对查询并不在我的情况下工作的烦恼,我应该使用哪种查询类型?
对于像您这样的查询bool
过滤器优于and
过滤器。请参阅here关于此建议的全部内容,以及为什么被认为更高效。
这些虽这么说,我会选择做这样的:
{
"query": {
"filtered": {
"filter": {
"bool": {
"must": [
{"term": {"a": -23.4807339}},
{"term": {"b": -46.60068}}
]
}
}
}
}
}
谢谢!有效!如果我希望它返回所有值,如果没有使用许多查询,有什么办法可以做到这一点? – 2015-02-06 16:20:58
@ViníciusMariano如果你要返回大量的文档,最好的办法可能是查看'scroll'功能(它与其他数据库技术中的游标有一些相似之处)。更全面的文档在这里:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-scroll.html – rchang 2015-02-06 18:15:41