2013-02-27 4 views
2

Я не знаю, есть ли у эластичного поиска плохая документация, или я просто ищу в неправильных местах. То, что я пытаюсь сделать, это то, что я хочу искать определенный индекс, но различный тип с разными запросами, но один результат обратно. например:эластичный поиск нескольких типов поиск

Я индекс называется beta и два типа внутри индекса test1 и test2, я хочу, чтобы запросить два типа с одним запросом:

Тип test1

{ 
     "query": { 
      "fuzzy_like_this": { 
       "fields": ["LastEditorID"], 
       "like_text": "Test1", 
       "min_similarity": 0.1, 
       "max_query_terms": 5 
      } 
     } 
    } 

типа test2

и получить результаты в один мир Я имею в виду один объект. Я также предпочитаю указывать тип запроса в запросе GET

Я новичок в поиске эластичных материалов, поэтому, пожалуйста, просто спросите.

UPDATE: то, что мне нужно что-то вроде этого, но это не работает

[{ 
    "query": { 
     "fuzzy_like_this": { 
      "fields": ["user"], 
      "like_text": "Haider", 
      "min_similarity": 0.1, 
      "max_query_terms": 5 
     } 
    }, 
    "filter": { 
     "type": { 
      "value": "typetest"   
     } 
    } 
}, 
{ 
    "query": { 
     "fuzzy_like_this": { 
      "fields": ["user"], 
      "like_text": "Haider", 
      "min_similarity": 0.1, 
      "max_query_terms": 5 
     } 
    }, 
    "filter": { 
     "type": { 
      "value": "typetest"   
     } 
    } 
} 

] 

ответ

2

Вы можете добавить фильтр к запросу и фильтр на _type поле.

Помогает ли это?

+0

Спасибо за повторе, как я сказал, что я новичок с ES так же вы имеете в виду что-то вроде, что '{ \t«запрос»: { \t \t«fuzzy_like_this»: { \t \t \t«полей»: [ "LastEditorID"], \t \t \t "like_text": "C4446476-15E6-E111-9ECB-B7C5971D170A", \t \t \t "min_similarity": 0.1, \t \t \t "max_query_terms": 5 \t \t} \t}, \t "фильтр": { \t \t "тип": { \t \t \t "значение": "test1" \t \t} \t} } ', потому что не работает – user1445117

+0

пример очень помог бы – Adrian

Смежные вопросы