转换¶
该 CAST 操作符将输入从一种类型转换为另一种类型。在许多情况下,转换是隐式创建的,但可以使用此操作符强制进行类型转换。
当前支持以下类型转换。有关每个类型关键字的Python类型,请参阅
supported_dataframe_data_types:
| 来自 | 到 | 备注 |
|---|---|---|
VARCHAR |
VARCHAR |
|
VARCHAR |
TINYINT/SMALLINT/INTEGER/BIGINT |
|
VARCHAR |
FLOAT/DOUBLE |
|
VARCHAR |
DECIMAL |
等同于 DOUBLE。这在未来可能会改变。 |
VARCHAR |
TIMESTAMP |
|
VARCHAR |
DATE |
截断为日期,但仍是时间戳类型。未来可能会有所更改。 |
TINYINT/SMALLINT/INTEGER/BIGINT |
VARCHAR |
|
TINYINT/SMALLINT/INTEGER/BIGINT |
TINYINT/SMALLINT/INTEGER/BIGINT |
|
TINYINT/SMALLINT/INTEGER/BIGINT |
FLOAT/DOUBLE |
|
TINYINT/SMALLINT/INTEGER/BIGINT |
DECIMAL |
等同于 DOUBLE。这在未来可能会改变。 |
TINYINT/SMALLINT/INTEGER/BIGINT |
TIMESTAMP |
|
FLOAT/DOUBLE |
VARCHAR |
|
FLOAT/DOUBLE |
TINYINT/SMALLINT/INTEGER/BIGINT |
|
FLOAT/DOUBLE |
FLOAT/DOUBLE |
|
FLOAT/DOUBLE |
DECIMAL |
等同于 DOUBLE。未来可能会更改 |
TIMESTAMP |
VARCHAR |
|
TIMESTAMP |
TINYINT/SMALLINT/INTEGER/BIGINT |
|
TIMESTAMP |
TIMESTAMP |
|
TIMESTAMP |
DATE |
截断到日期,但仍然是时间戳类型。这在将来可能会改变。 |
注意
CAST 的正确性通常无法在编译时确定。用户负责确保转换是可能的 (例如 CAST(str_col as INTEGER))。