Функции преобразования типов
Функции для преобразования выражения одного типа данных в другой.
CAST
Синтаксис:
CAST(
expression
AS data_type) | Выражение для приведения к другому типу. Если | |
| Целевой тип данных для приведения |
Описание: Преобразует результат данного выражения в целевой тип данных. Если приведение невозможно (например, из-за слишком узкого целевого типа или неспособности преобразовать значение), запрос завершается ошибкой.
SELECT CAST('123' AS INT) AS int;
int
---------------
123 SELECT CAST(123 AS VARCHAR) AS string;
string
---------------
123 SELECT YEAR(CAST('2018-05-19T11:23:45Z' AS TIMESTAMP)) AS year;
year
---------------
2018 Поддерживаются типы данных ANSI SQL и Elasticsearch SQL, причем приоритет отдаётся первым. Это влияет только на FLOAT, которое из-за конфликта имён интерпретируется как ANSI SQL и, соответственно, отображается в Elasticsearch как double, а не как float. Для получения Elasticsearch float выполните приведение к его SQL эквиваленту, типу real.
CONVERT
Синтаксис:
CONVERT(
expression,
data_type) | Выражение для преобразования. Если | |
| Целевой тип данных для преобразования |
Описание: Работает точно так же, как CAST с немного другим синтаксисом. Кроме того, помимо стандартных типов данных, поддерживаются соответствующие типы данных ODBC.
SELECT CONVERT('123', SQL_INTEGER) AS int;
int
---------------
123 SELECT CONVERT('123', INTEGER) AS int;
int
---------------
123
© 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-functions-type-conversion.html