2014-11-12 3 views
2

как я могу создать запрос с клиентом elastic4s scala?elastic4s запрос поиск функция оценка

я называю, используя Марвел/чувство

GET /business/_search 
{ 
    "query": { 
    "function_score": { 
     "query": { 
     "match": { 
      "name": "my text" 
     } 
     }, 
     "script_score": { 
     "script": "_score + log(doc['reviews'].value + 1)", 
     "lang": "groovy" 
     } 
    } 
    }, 
    "facets": { 
    "industry": { 
     "terms": { 
     "fields": ["type", "industry"] 

     } 
    } 
    }, 
    "size": 10 
} 

Но как я могу создать запрос с elastic4s?

ответ

2

Вы можете сделать функцию вратаря запрос следующим образом:

val req = search in "marvel/sense" query { 
functionScoreQuery(matchQuery("name", "my_text")).scorers(
    scriptScore("_score + log(doc['reviews'].value + 1)") 
) 
} 

Тогда, конечно, добавить в гранях, и т.д., следуя инструкциям на https://github.com/sksamuel/elastic4s/blob/master/guide/search.md

+0

, что если бы я хотел, чтобы добавить фильтры, также? –

+0

К поиску или? – monkjack

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