Type Conversion Functionsedit
Functions for converting an expression of one data type to another.
CAST
edit
Synopsis:
Description: Casts the result of the given expression to the target data type. If the cast is not possible (for example because of target type is too narrow or because the value itself cannot be converted), the query fails.
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
Both ANSI SQL and Elasticsearch SQL types are supported with the former taking
precedence. This only affects FLOAT
which due naming conflict, is interpreted as ANSI SQL
and thus maps to double
in Elasticsearch as oppose to float
.
To obtain an Elasticsearch float
, perform casting to its SQL equivalent, real
type.
CONVERT
edit
Synopsis:
Description: Works exactly like CAST
with slightly different syntax.
Moreover, apart from the standard data types it supports the corresponding
ODBC data types.
SELECT CONVERT('123', SQL_INTEGER) AS int; int --------------- 123
SELECT CONVERT('123', INTEGER) AS int; int --------------- 123