检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
强制转换函数 表1 强制转换函数列表 MySQL数据库 支持计划外ALT CAST() 支持 CONVERT() 支持 父主题: 计划外应用无损透明
to_number ( expr [, fmt]) 描述:将expr按指定格式转换为一个NUMBER类型的值。 类型转换格式请参考表2。 转换十六进制字符串为十进制数字时,最多支持16个字节的十六进制字符串转换为无符号数。 转换十六进制字符串为十进制数字时,格式字符串中不允许出现除'x'或'X'以外的其他字符,否则报错。
to_number ( expr [, fmt]) 描述:将expr按指定格式转换为一个NUMBER类型的值。 类型转换格式请参考表1。 转换十六进制字符串为十进制数字时,最多支持16个字节的十六进制字符串转换为无符号数。 转换十六进制字符串为十进制数字时,格式字符串中不允许出现除'x'或'X'以外的其他字符,否则报错。
to_number ( expr [, fmt]) 描述:将expr按指定格式转换为一个NUMBER类型的值。 类型转换格式请参见表4。 转换十六进制字符串为十进制数字时,最多支持16个字节的十六进制字符串转换为无符号数。 转换十六进制字符串为十进制数字时,格式字符串中不允许出现除'x'或'X'以外的其他字符,否则报错。
强制转换函数 表1 强制转换函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 CAST() 支持 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 2 CONVERT() 支持 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。
NCHAR[(N)])转换字符集。 GaussDB支持使用CONVERT(expr, FLOAT[(p)])或CONVERT(expr, DOUBLE)将表达式转换为浮点类型,MySQL 5.7版本不支持此转换。 GaussDB不支持使用CONVERT(expr, JSON)将表达式转换为JSON。
charset_info或者CAST(expr AS NCHAR[(N)])转换字符集。 GaussDB支持使用CAST(expr AS FLOAT[(p)])或CAST(expr AS DOUBLE)将表达式转换为浮点类型,MySQL 5.7版本不支持此转换。 对于CAST嵌套子查询场景,如果子查询语句返
数据类型转换 数据库中允许有些数据类型进行隐式类型转换(赋值、函数调用的参数等),有些数据类型间不允许进行隐式数据类型转换,可尝试使用GaussDB提供的类型转换函数,例如CAST进行数据类型强转。 GaussDB数据库常见的隐式类型转换,请参见表1。 GaussDB支持的DAT
数据类型转换 数据库中允许有些数据类型进行隐式类型转换(赋值、函数调用的参数等),有些数据类型间不允许进行隐式数据类型转换,可尝试使用GaussDB提供的类型转换函数,例如CAST进行数据类型强转。 GaussDB数据库常见的隐式类型转换,请参见表1。 GaussDB支持的DAT
数据类型转换 数据库中有些数据类型间允许进行隐式类型转换(例如赋值、函数调用的参数等)、有些数据类型间不允许进行隐式数据类型转换(例如int和复合类型),可尝试使用GaussDB提供的类型转换函数,例如CAST进行数据类型强转。 GaussDB数据库常见的隐式类型转换,请参见表1。
强制转换函数 表1 强制转换函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 CAST() 支持 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 2 CONVERT() 支持 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。
其他表达式计算场景,根据不同表达式的数据类型, 来决定用于比较或者最终结果的目标数据类型。 数据类型转换差异点主要分为三类:隐式转换,显式转换和UNION/CASE。 双冒号转换差异点: GaussDB中使用双冒号将函数入参转换为期望类型可能导致结果超出预期,且MySQL中无双冒号功能。 示例: m_db=#
1. 数据类型转换规则的差异: GaussDB数据库对于不同数据类型之间的转换规则有明确的定义: 是否支持转换:pg_cast系统表中是否定义两种类型的转换路径,没有定义则不支持。 支持转换的场景:支持任意场景转换、仅支持显式(cast表达式)转换、仅支持赋值时转换。不支持的场景
1. 数据类型转换规则的差异: GaussDB数据库对于不同数据类型之间的转换规则有明确的定义: 是否支持转换:pg_cast系统表中是否定义两种类型的转换路径,没有定义则不支持。 支持转换的场景:支持任意场景转换、仅支持显式(cast表达式)转换、仅支持赋值时转换。不支持的场景
数据类型转换 数据库中有些数据类型间允许进行隐式类型转换(例如赋值、函数调用的参数等)、有些数据类型间不允许进行隐式数据类型转换(例如int),可尝试使用GaussDB提供的类型转换函数,例如CAST进行数据类型强转。 GaussDB数据库常见的隐式类型转换,请参见表1。 Gau
数据类型转换 数据库中允许有些数据类型进行隐式类型转换(赋值、函数调用的参数等),有些数据类型间不允许进行隐式数据类型转换,可尝试使用GaussDB提供的类型转换函数,例如CAST进行数据类型强转。 GaussDB数据库常见的隐式类型转换,请参见表1。 GaussDB支持的DAT
数据类型转换 数据库中允许有些数据类型进行隐式类型转换(赋值、函数调用的参数等),有些数据类型间不允许进行隐式数据类型转换,可尝试使用GaussDB提供的类型转换函数,例如CAST进行数据类型强转。 GaussDB数据库常见的隐式类型转换,请参见表1。 GaussDB支持的DAT
数据类型转换 数据库中有些数据类型间允许进行隐式类型转换(例如赋值、函数调用的参数等)、有些数据类型间不允许进行隐式数据类型转换(例如:INT和复合类型),可尝试使用GaussDB提供的类型转换函数,例如:CAST进行数据类型强转。 GaussDB数据库常见的隐式类型转换,请参见表1。
数据类型转换 数据库中有些数据类型间允许进行隐式类型转换(例如赋值、函数调用的参数等)、有些数据类型间不允许进行隐式数据类型转换(例如INT和复合类型),可尝试使用GaussDB提供的类型转换函数,例如CAST进行数据类型强转。 GaussDB数据库常见的隐式类型转换如表1所示。
普通的字符串类型当字符序为BINARY时,将转换成对应的二进制类型(TEXT转换成BLOB,VARCHAR转换成VARBINARY等)。 数据类型转换差异点主要分为:隐式转换,显式转换、UNION/CASE、decimal类型。 隐式类型转换差异点 GaussDB中统一平铺成小类型到小类型的转换规则,MySQ