数据类型强制转换表

转换类型

下表定义了 Vertica 支持的所有可能的类型转换。该表第一列的数据类型是待转换的输入内容,第二个标题行所列的数据类型是结果赋值。

隐式和显式转换

Vertica 支持无显式转换的值的数据类型转换,例如 NUMERIC(10,6) -> NUMERIC(18,4)。将类型不同但相互兼容的值转换为目标列的数据类型时,进行隐式数据类型转换。例如,在添加值 (INTEGER + NUMERIC) 时,结果被隐式转换为 NUMERIC 类型以适应语句中的重要类型。根据输入数据的类型,可能会出现不同的精度和小数位数。

当源数据无法隐式转换为目标列的数据类型时,才可进行显式类型转换。

赋值转换

在数据赋值转换中,当赋值到 INSERTUPDATE...SET 语句中的数据库列时,进行隐式强制转换。例如,在包括 INSERT...VALUES('2.5') 的语句中,目标列数据类型是 NUMERIC(18,5),可推知从 VARCHAR 到列数据类型的转换。

在无数字意义的赋值中,该值需进行 CHAR/VARCHAR/LONG VARCHAR 的比较。

另请参阅