2016-04-14 31 views
0

Eğer birisi yardımcı olabilir? 1. başlık ve açıklama hem üst düzey alanları must ve nested Query aitElasticSearch - Tam Metin Yuvalanmış alanlarda arama

GET /docidx/Document/_search 
{ 
    "query": { 
     "query_string": { 
      "query": "title:computer AND description:electronics" 
     } 
    } 
} 

This works fine. 

2. The full text search query where title is top level field but "abstract.content" i.e content is a nested field under abstract - does not return results. 

GET /docidx/Document/_search 
{ 
    "query": { 
     "query_string": { 
      "query": "title:computer AND abstract.content:memory" 
     } 
    } 
} 

Does Elastic Search has support for full text search for nested fields? 

cevap

0

Kullanım kombinasyonudur tam metin arama sorgusu:

GET /docidx/Document/_search 
{ 
"query": { 
    "bool": { 
    "must": [ 
     { 
      "query_string": { 
       "default_field": "title", 
       "query": "computer" 
      } 
     }, 
     { 
      "nested": { 
       "path": "abstract", 
       "query": { 
       "query_string": { 
        "default_field": "abstract.content", 
        "query": "memory" 
       } 
       } 
      } 
      } 
     ] 
     } 
    } 
    } 
+0

Ama nasıl bu ifade "title ayrıştırmak için: Bilgisayarı VE özet. içerik: bellek". Veya aşağıdaki gibi karmaşık bir ifade olabilir: - "((başlık: bilgisayar VE açıklama: elektronik VEYA (serialNum: 123 AND misc: test)) VEYA sunucu" – sanesearch

+0

Aynı sorgudaki yuvalanmış ve yuvalanmamış alanları eşleyemezsiniz. bir sorgu içindeki tüm yuvalanmış alanlar ve diğerinde yuvalanmayanlar ve gereklilikler arasında her ikisini de 'must' veya 'should '(uygula) yapmalıdır – Richa

İlgili konular