对于这个示例数组:
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!