Elasticsearch"加入"表

时间:2016-07-07 21:49:47

标签: php mysql elasticsearch join nosql

我需要做"加入"在2个索引(表)之间,并检查两个索引中存在的文档上的特定字段。

我想添加条件,例如" dateExpiry"下面,但我收到一个错误。是否可以加入2个或更多索引?

GET cache-*/_search
{
  "query": {
    "bool": {
      "must_not": [
        {
          "query": {
            "terms": {
              "TagId": {
                "index": "domain_block-2016.06",
                "type": "cBlock",
                "id": "57692ef6ae8c50f67e8b45",
                "path": "TagId",
               "range" : {
               "dateExpiry" : {
                   "gte" :  "20160705T12:00:00"
               }
              }
            }
          }
        }
      ]
    }
  } 
}

1 个答案:

答案 0 :(得分:1)

目前不支持Terms Query Lookup内的过滤器。但是,Elasticsearch在联接/关系here上有一些很好的文档。

您最好的选择可能是针对Elasticsearch运行两个查询 - 一个用于获取TagId列表,另一个用于将列表作为排除子句包含。