API перевода SQL
API перевода SQL принимает SQL-запрос в документе JSON и преобразует его в запросы Elasticsearch. Например:
POST /_sql/translate
{
"query": "SELECT * FROM library ORDER BY page_count DESC",
"fetch_size": 10
} Что возвращает:
{
"size": 10,
"_source": false,
"fields": [
{
"field": "author"
},
{
"field": "name"
},
{
"field": "page_count"
},
{
"field": "release_date",
"format": "strict_date_optional_time_nanos"
}
],
"sort": [
{
"page_count": {
"order": "desc",
"missing": "_first",
"unmapped_type": "short"
}
}
]
} Это запрос, который SQL выполнит для получения результатов. В данном случае SQL будет использовать API scroll. Если результат содержал агрегацию, тогда SQL будет использовать обычный API search.
Тело запроса принимает те же параметры, что и API поиска SQL, за исключением cursor.
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/sql-translate.html