Выберите отдельный Cloudsearch AWS
Сейчас я делаю этот запрос на CloudSearch
:
aws cloudsearchdomain --endpoint-url myUrl search --search-query France --query-options "{'fields':['country']}" --return name
Я хочу получить только разные имена, но я получаю имена с идентификатором. Есть способ сделать это?
1 ответ
Для этого примера массива:
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
Я хочу получить все разные названия компании и названия компании в Нью-Йорке
Я делаю эту просьбу: URL/search?q=NY&facet.company_id={sort:'count'}&q.options={"defaultOperator":"and","fields":["city"],"operators":["and","or"]}&return=_all_fields
Я получаю отчетливый company_id, но не могу найти одновременно название компании без повторного запроса
{
"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
}]
}
Я анализирую JSON в моей функции Lambda!