检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
其他函数 表1 其他函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 DATABASE() 支持。 - 2 UUID() 支持。 - 3 UUID_SHORT() 支持。 - 4 ANY_VALUE() 支持,有差异。 作为分组的第一条数据是不确定的,与底层算子相
其他函数 表1 其他函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 UUID() 支持 - 2 UUID_SHORT() 支持 - 父主题: 系统函数
CEIL() 支持。 - 25 CRC32() 支持,有差异。 当BINARY类型插入字符串长度小于目标长度时,GaussDB填充符和MySQL不同;因此入参为BINARY类型时,函数结果和MySQL不一致。 26 CONV() 支持。 - 父主题: 系统函数
create_time 在M-Compatibility下,此字段与MySQL行为表现有差异,对于创建视图的情形MySQL中该字段置null,M-Compatibility则显示实际的创建表时间。数据库自带的表,视图设置null。 12 information_schema.tables
表1 日期与和时间函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 ADDDATE() 支持 此函数的表现会因为interval表达式的差异与MySQL有差异,具体可见INTERVAL差异说明。 2 ADDTIME() 支持 MySQL对第二入参为DATETIME样式
SQL GaussDB数据库兼容绝大多数MySQL语法,但存在部分差异。本章节介绍GaussDB数据库当前支持的MySQL语法。 部分关键字在MySQL可以做标识符但M-Compatibility不可以或存在限制,以下为表1。 表1 限制做标识符列表 关键字类型 关键字 约束 保留(可以是类型或函数)
)语句中,使用decimal数据类型,若含有前缀0,M-Compatibility兼容模式下忽略前缀0,长度计算不包括0,在MySQL 5.7下,长度计算加上前缀0的数量,在MySQL 8.0下,无论存在多少个前缀0,长度计算只加上1。 m_db=# create table test as select
0修复了该问题,目前GaussDB和MySQL8.0保持一致。 5 ISNULL() 支持,有差异。 函数返回值类型在MySQL5.7和MySQL8.0中存在差异,结合MySQL8.0的行为更为合理,因此函数返回值类型兼容MySQL8.0。 内层嵌套部分聚合函数时,部分场景返回结果MySQL5.7和MySQL8
JSON数据类型 表1 JSON数据类型 序号 MySQ数据库 GaussDB数据库 1 JSON 不完全兼容 父主题: 数据类型
定,GaussDB数据库中,字符集必须与数据库的字符集一致,且不支持表内多种字符集混合使用。 utf8mb4字符集下默认字符序为utf8mb4_general_ci,与MySQL5.7保持一致。 表1 排序规则列表 序号 MySQL数据库 GaussDB数据库 1 utf8mb4_general_ci
加密函数 表1 加密函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 AES_DECRYPT() 支持 - 2 AES_ENCRYPT() 支持 - 父主题: 系统函数
比较函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 COALESCE() 支持,有差异。 union distinct场景下,返回值精度与MySQL不完全一致。 当第一个不为NULL的参数的后续参数表达式中存在隐式类型转换错误时,MySQL会忽略该错误,Gaus
强制转换函数 表1 强制转换函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 CAST() 支持 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 2 CONVERT() 支持 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。
二进制数据类型 序号 MySQL数据库 GaussDB数据库 差异 1 BINARY[(M)] 支持,存在差异 输入格式: 输入二进制或十六进制字符串,GaussDB输出为十六进制,MySQL中根据ASCII码表转义,无法转义的输出为空。 插入字符串长度小于目标长度时,GaussDB
二进制数据类型 序号 MySQL数据库 GaussDB数据库 差异 1 BINARY[(M)] 支持,存在差异 输入格式: 输入二进制或十六进制字符串,GaussDB输出为十六进制,MySQL中根据ASCII码表转义,无法转义的输出为空。 插入字符串长度小于目标长度时,GaussDB
数字操作函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 ABS() 支持。 - 2 ACOS() 支持。 - 3 ASIN() 支持。 - 4 ATAN() 支持。 - 5 ATAN2() 支持。 - 6 CEILING() 支持。 部分操作结果类型与MySQL不一致。对于
加密函数 表1 加密函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 AES_DECRYPT() 支持。 ecb为不安全加密模式,GaussDB不支持,默认为cbc模式。 GaussDB中,当指定数据库使用的字符编码是SQL_ASCII时,服务器把字节值0-127
与MySQL兼容性说明 分布式版 集中式版
GaussDB的数据类型的大部分功能场景与MySQL一致,但存在部分差异。 除特别说明,部分数据类型精度、标度、位数大小等不支持用浮点型数值定义,建议使用合法的整型数值定义。 GaussDB回显以\0结束,MySQL会把整个字符串显示,因此GaussDB会将被解析为\0后的字节截断,MySQL不会。 示例:
GaussDB的数据类型的大部分功能场景与MySQL一致,但存在部分差异。 除特别说明,部分数据类型精度、标度、位数大小等不支持用浮点型数值定义,建议使用合法的整型数值定义。 数值数据类型 日期与时间数据类型 字符串数据类型 二进制数据类型 数据类型支持的属性 数据类型转换 父主题: MySQL数据库兼容性M-Compatibility模式