mapped_pages:
Functions for converting an expression of one data type to another.
CAST
[sql-functions-type-conversion-cast]CAST(
expression <1>
AS data_type) <2>
null
, the function returns null
.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
::::{important}
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 {{es}} as oppose to float
. To obtain an {{es}} float
, perform casting to its SQL equivalent, real
type.
::::
CONVERT
[sql-functions-type-conversion-convert]CONVERT(
expression, <1>
data_type) <2>
null
, the function returns null
.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