Функции преобразования типов
BOOL
Синтаксис:BOOL( expression )
Переводит выражение expression
в логический тип по следующим правилам:
Тип | FALSE | TRUE |
---|---|---|
Дробное число | Целое число | 0 , 0.0 | Все остальные |
Строка | Пустая строка ("" ) | Все остальные |
Логический | FALSE | TRUE |
Дата | Дата и время | - | TRUE |
DATE
Синтаксис:DATE( expression [ , timezone ] )
Переводит выражение expression
в формат даты.
Дата должна быть определена в формате YYYY-MM-DD
.
Если expression
является числом, то при наличии дополнительного параметра timezone
дата рассчитывается для указанной временной зоны.
DATE_PARSE
Синтаксис:DATE_PARSE( value )
Переводит выражение value
в формат даты. В отличие от DATE, поддерживает множество форматов.
DATETIME
Синтаксис:DATETIME( expression [ , timezone ] )
Переводит выражение expression
в формат даты и времени. При переводе Date
в DateTime
время определяется, как 00:00:00
.
Дата должна быть определена в формате YYYY-MM-DDThh:mm:ss
или YYYY-MM-DD hh:mm:ss
.
Числовые значения воспринимаются как время в формате Unix time и равны количеству секунд, прошедших с 00:00:00 1 января 1970 года, за вычетом поправок, сделанных из-за високосных секунд.
При наличии дополнительного параметра timezone
дата и время рассчитываются для указанной временной зоны. Параметр timezone
должен быть определен в формате Region/Data_Zone
.
DATETIME_PARSE
Синтаксис:DATETIME_PARSE( value )
Переводит выражение value
в формат даты и времени. В отличие от DATETIME, поддерживает множество форматов.
DB_CAST
Синтаксис:DB_CAST( expression, native_type [ , param_1 [ , param_2 ] ] )
Переводит выражение expression
в указанный нативный тип данных native_type
.
Поддерживаются следующие типы:
Источник данных | Тип данных | Нативный тип | Параметры нативного типа | Комментарий |
---|---|---|---|---|
ClickHouse | Дата | Date | ||
ClickHouse | Дата | Date32 | ||
ClickHouse | Дробное число | Float32 | ||
ClickHouse | Дробное число | Float64 | ||
ClickHouse | Дробное число | Decimal | Целое число , Целое число | |
ClickHouse | Целое число | Int8 | ||
ClickHouse | Целое число | Int16 | ||
ClickHouse | Целое число | Int32 | ||
ClickHouse | Целое число | Int64 | ||
ClickHouse | Целое число | UInt8 | ||
ClickHouse | Целое число | UInt16 | ||
ClickHouse | Целое число | UInt32 | ||
ClickHouse | Целое число | UInt64 | ||
ClickHouse | Строка | String | ||
PostgreSQL | Массив дробных чисел | double precision[] | ||
PostgreSQL | Массив дробных чисел | real[] | ||
PostgreSQL | Массив дробных чисел | numeric[] | Целое число , Целое число | |
PostgreSQL | Массив целых числел | smallint[] | ||
PostgreSQL | Массив целых числел | integer[] | ||
PostgreSQL | Массив целых числел | bigint[] | ||
PostgreSQL | Массив строк | text[] | ||
PostgreSQL | Массив строк | character varying[] | ||
PostgreSQL | Массив строк | varchar[] | ||
PostgreSQL | Дробное число | double precision | ||
PostgreSQL | Дробное число | real | ||
PostgreSQL | Дробное число | numeric | Целое число , Целое число | |
PostgreSQL | Целое число | smallint | ||
PostgreSQL | Целое число | integer | ||
PostgreSQL | Целое число | bigint | ||
PostgreSQL | Строка | text | ||
PostgreSQL | Строка | character | Целое число | Алиас: char |
PostgreSQL | Строка | character varying | Целое число | Алиас: varchar |
PostgreSQL | Строка | char | Целое число | Алиас для character |
PostgreSQL | Строка | varchar | Целое число | Алиас для character varying |
FLOAT
Синтаксис:FLOAT( expression )
Переводит выражение expression
в формат дробного числа по следующим правилам:
Тип | Значение |
---|---|
Дробное число | Целое число | Исходное значение. |
Дата | Дата и время | Unix-время соответствующее дате и времени. Если значение содержит в себе информацию о временной зоне, то она учитывается при вычислении. Если же временная зона неизвестна, то время считается UTC. |
Строка | Число из строки в десятичной записи. |
Логический | TRUE — 1.0 , FALSE — 0.0 . |
GEOPOINT
Синтаксис:GEOPOINT( value_1 [ , value_2 ] )
Формирует значение типа геоточка. Принимает на вход строку, либо значение типа "геоточка", либо координаты — широту value_1
и долготу value_2
. Если на вход подается одна строка, в ней должен содержаться список из двух чисел, координат (широты и долготы) в JSON-синтаксисе.
GEOPOLYGON
Синтаксис:GEOPOLYGON( value )
Переводит выражение value
в формат геополигона.
INT
Синтаксис:INT( expression )
Переводит выражение expression
в формат целого числа по следующим правилам:
Тип | Значение |
---|---|
Целое число | Исходное значение. |
Дробное число | Целая часть числа (округление вниз). |
Дата | Дата и время | Unix-время соответствующее дате и времени. Если значение содержит в себе информацию о временной зоне, то она учитывается при вычислении. Если же временная зона неизвестна, то время считается UTC. |
Строка | Число из строки в десятичной записи. |
Логический | TRUE — 1 , FALSE — 0 . |
STR
Синтаксис:STR( expression )
Переводит выражение expression
к типу строки.