Если вы хотите вернуть только уникальные значения, вы можете использовать агрегирование терминов.В вашем случае это будет выглядеть так (размер в этом случае - максимальное количество уникальных идентификаторов, которые вы хотите вернуть):
"query": {
"bool": {
"filter": {
"has_parent": {
"parent_type": "profiles",
"query": {
"query_string": {
"query": "age:>0 and user:aqwe"
}
}
}
}
}
},
"aggs": {
"unique": {
"terms": {
"field": "_id",
"size": 100
}
}
}
"sort": ["user", {"createdAt": "asc"}]