1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- [role="xpack"]
- [[sql-translate]]
- == SQL Translate API
- The SQL Translate API accepts SQL in a JSON document and translates it
- into native {es} queries. For example:
- [source,console]
- --------------------------------------------------
- POST /_sql/translate
- {
- "query": "SELECT * FROM library ORDER BY page_count DESC",
- "fetch_size": 10
- }
- --------------------------------------------------
- // TEST[setup:library]
- Which returns:
- [source,console-result]
- --------------------------------------------------
- {
- "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"
- }
- }
- ],
- "track_total_hits": -1
- }
- --------------------------------------------------
- Which is the request that SQL will run to provide the results.
- In this case, SQL will use the <<scroll-search-results,scroll>>
- API. If the result contained an aggregation then SQL would use
- the normal <<search-search,search API>>.
- The request body accepts the same <<sql-search-api-request-body,parameters>> as
- the <<sql-search-api,SQL search API>>, excluding `cursor`.
|