现在我正在CloudSearch
上执行此请求:
aws cloudsearchdomain --endpoint-url myUrl search --search-query France --query-options "{'fields':['country']}" --return name
我想只获得不同的名字,但我得到了id的名字。 有没有办法做到这一点?
答案 0 :(得分:0)
对于此示例数组:
country | city | company_name | company_id | product_name | product_id
US | NY | C1N | C1id | P1N | P1id
US | NY | C1N | C1id | P2N | P2id
US | NY | C2N | C2id | P1N | P1id
我希望在纽约获得所有不同的company_name和company_id
我执行此请求:URL/search?q=NY&facet.company_id={sort:'count'}&q.options={"defaultOperator":"and","fields":["city"],"operators":["and","or"]}&return=_all_fields
我得到了不同的company_id,但我找不到同时获取company_name而无需另外请求的方法
{
"status": {
"rid": "lKzEiL0qCwok24g=",
"time-ms": 93
},
"hits": {
"found": 2,
"start": 0,
"hit": [{
"id": "369998744556855594878962245"
}, {
"id": "3699987477777545245"
}]
},
"facets": {
"company_id": {
"buckets": [{
"value": "C1id",
"count": 2
}, {
"value": "C2id",
"count": 1
}]
}
}
}
编辑:解决方案
我找到了一个解决方案:我将原始json数据存储在一个新列中:
json_company = {\"id\":\"C1id\",\"name\":\"C1N\"}
和我的请求:&facet.json_company ={}
我的结果:
"facets": {
"json_company": {
"buckets": [{
"value": "{\"id\":\"C1id\",\"name\":\"C1N\"}",
"count": 2
}, {
"value": "{\"id\":\"C2id\",\"name\":\"C2N\"}",
"count": 1
}]
}
我在Lambda函数中解析JSON!