简体   繁体   English

如何将Solr查询转换为Elasticsearch

[英]How to translate a Solr query into Elasticsearch

I'm trying to express this Solr (Lucene) query in Elastic Search, but I'm not sure how: 我正在尝试在Elastic Search中表达此Solr(Lucene)查询,但不确定如何:

q=field1:"value1"^10 OR field2:("value2a"^20 OR "value2b"^30)
group=true
group.field=fieldGroup

Is there a way to simply pass a Lucene query to ES, so I don't need to first translate it? 有没有一种方法可以简单地将Lucene查询传递给ES,所以我不需要先翻译它?

It's definitely possible to pass a Lucene query into Elasticsearch using a query_string query. 绝对有可能使用query_string查询将Lucene查询传递到Elasticsearch中。 Something like this should be plausible: 像这样的事情应该是合理的:

GET /_search
{
  "query": {
    "query_string": {
      "query": "field1:\"value1\"^10 OR field2:(\"value2a\"^20 OR \"value2b\"^30)"
    }
  }
}

You can also use aggregations to mimic your field collapsing: https://www.elastic.co/guide/en/elasticsearch/guide/current/top-hits.html 您还可以使用聚合来模拟您的字段崩溃: https : //www.elastic.co/guide/en/elasticsearch/guide/current/top-hits.html

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM