擅长:python、mysql、java
<p>你的搜索中似乎有一个额外的<code>query</code>(总共三个),这给了你一个不需要的顶层。您需要删除顶层<code>query</code>,并将其替换为<a href="http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html" rel="nofollow">^{<cd3>}</a>作为顶层键。在</p>
<pre><code>res = es.search(index="article-index", fields="url", body={"function_score": {
"query": {
{ "query_string": {"query": keywordstr} }
},
"functions": {
"DECAY_FUNCTION": {
"recencyboost": {
"origin": "0",
"scale": "20"
}
}
},
"score_mode": "multiply"
})
</code></pre>
<p>注意:<code>score_mode</code>默认为<code>"multiply"</code>,未使用的<code>boost_mode</code>也是如此,因此不需要提供它。在</p>