0
我試圖讓過濾結果只返回具有標籤「新聞」Elasticsearch - 無法獲取過濾器QUERY_STRING
-> POST https://host.com/harvester-dev/entries/_search?
_source=description%2Cimage%2Ctitle%2CupdateTime%2Ctags%2Curl
{
"filtered": {
"query": {
"query_string": {
"query": "suksess-duo",
"default_operator": "AND"
}
},
"filter": {
"bool": {
"must": {
"term": {
"tags": "news"
}
}
}
}
},
"aggs": {
"harvester-test": {
"global": {}
}
}
}
<- 400
{
"error": "SearchPhaseExecutionException[Failed to execute phase [query], all shards failed; shardFailures {[yXZEi0emQkuToiYBcj1wUA][harvester-dev][0]: SearchParseException[[harvester-dev][0]: from[-1],size[-1]: Parse Failure [Failed to parse source [{\"filtered\":{\"query\":{\"query_string\":{\"query\":\"suksess-duo\",\"default_operator\":\"AND\"}},\"filter\":{\"bool\":{\"must\":{\"term\":{\"tags\":\"news\"}}}}},\"aggs\":{\"harvester-test\":{\"global\":{}}}}]]]; nested: SearchParseException[[harvester-dev][0]: from[-1],size[-1]: Parse Failure [No parser for element [filtered]]]; }{[6gUDVyvDTSGUeYnoIN8N8Q][harvester-dev][1]: RemoteTransportException[[elastic_search148_aws_eu_west_1_data_0_dblayer_com][inet[/NN.NN.NN.NN:9300]][indices:data/read/search[phase/query]]]; nested: SearchParseException[[harvester-dev][1]: from[-1],size[-1]: Parse Failure [Failed to parse source
這是數據的樣子的項目工作:
{
hits: {
total: 15921,
max_score: 1,
hits: [
{
_index: "harvester-dev",
_type: "entries",
_id: "5574156f",
_score: 1,
_source: {
image: "image-url",
description: "fine description",
updateTime: "2015-06-07T09:57:03.654Z",
title: "our title",
url: "http://example.com",
tags: [
"computers",
"news"
]
}
},]}}
我很想只抓取標籤爲「news」的文檔。例如,將「計算機」與標籤「新聞」匹配的文件。我應該如何製作我的查詢?
有標籤「新聞」和**沒有其他標籤**或只是有「新聞」(也許別人,無所謂)的文件? –