比较函数 表1 比较函数列表 MySQL数据库 GaussDB数据库 差异 COALESCE() 支持,存在差异 union distinct场景下,返回值精度与MySQL不完全一致。 当第一个不为NULL的参数的后续参数表达式中存在隐式类型转换错误时,MySQL会忽略该错误,G
其他函数 表1 其他函数列表 函数名 与MySQL的差异 DATABASE() - UUID() - UUID_SHORT() - ANY_VALUE() 作为分组的第一条数据是不确定的,与底层算子相关。例如同一条sql语句,GaussDB返回5和4,MySQL返回5和2。 CREATE
聚合函数 表1 聚合函数列表 函数名 与MySQL的差异 AVG() GaussDB中当expr中的列为BIT、BOOL、整数类型,且所有行的和超过BIGINT的范围时,会发生溢出导致整数翻转。 GaussDB在AVG函数入参为TEXT/BLOB类型时行为存在差异: MySQL 5
0修复了该问题,目前GaussDB和MySQL 8.0保持一致。 LEAST() ISNULL() 函数返回值类型在MySQL 5.7和MySQL 8.0中存在差异,结合MySQL 8.0的行为更为合理,因此函数返回值类型兼容MySQL 8.0。 内层嵌套部分聚合函数时,部分场景返回结果MySQL 5.7和MySQL
聚合函数 表1 聚合函数列表 MySQL数据库 GaussDB数据库 差异 AVG() 支持,存在差异 GaussDB中指定DISTINCT且SQL语句包含GROUP BY子句时,不对结果进行排序,MySQL会进行排序。 GaussDB中当expr中的列为BIT、BOOL、整数类
窗口函数 表1 窗口函数列表 函数名 与MySQL的差异 LAG() 偏移量N的取值范围不同: MySQL中,N只允许是在范围[0, 263-1]整数值。 GaussDB中,N只允许是在范围[0, 231-1]整数值。 偏移量N的取值形式不同: MySQL中,取值形式如下: 常量字面量的无符号整数。
其他函数 表1 其他函数列表 MySQL数据库 GaussDB数据库 差异 DATABASE() 支持 - UUID() 支持 - UUID_SHORT() 支持 - 父主题: 系统函数
流量控制函数 表1 流量控制函数列表 MySQL数据库 GaussDB数据库 差异 IF() 支持,存在差异 expr1入参仅支持bool类型。非bool类型入参若不能转换为bool类型则报错。 若expr2、expr3两个入参类型不同且两类型间不存在隐式转换函数则报错。 两个入参类型相同时,返回该入参类型。
系统函数 系统函数兼容性概述 流程控制函数 日期和时间函数 字符串函数 类型转换函数 加密函数 比较函数 聚合函数 JSON函数 窗口函数 数字操作函数 网络地址函数 其他函数 父主题: MySQL兼容性M-Compatibility模式
数字操作函数 表1 数字操作函数列表 MySQL数据库 GaussDB数据库 差异 log2() 支持,存在差异 小数位显示与MySQL存在差异,受GaussDB浮点数据类型限制,可通过参数extra_float_digits控制小数位个数显示; 由于输入精度内部处理差异,Gau
系统函数 系统函数兼容性概述 流程控制函数 日期和时间函数 字符串函数 强制转换函数 加密函数 比较函数 聚合函数 数字操作函数 其他函数 父主题: MySQL兼容性M-Compatibility模式
加密函数 表1 加密函数列表 MySQL数据库 GaussDB数据库 差异 AES_DECRYPT() 支持 - AES_ENCRYPT() 支持 - 父主题: 系统函数
强制转换函数 表1 强制转换函数列表 MySQL数据库 GaussDB数据库 差异 CAST() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 CONVERT() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。
数字操作函数 表1 数字操作函数列表 函数名 与MySQL的差异 ABS() - ACOS() - ASIN() - ATAN() - ATAN2() - CEILING() 部分场景下函数的返回类型与MySQL不一致,进而导致CREATE TABLE AS生成的表字段与MySQL不一致。
类型转换函数 表1 类型转换函数列表 函数名 与MySQL的差异 CAST() 由于函数执行机制不同,在cast函数嵌套其他函数(如greatest、least等)时,内层函数返回小于1的值,结果与MySQL不一致。 --GaussDB: m_db=# SELECT cast(least(1
字符串函数 表1 字符串函数列表 MySQL数据库 GaussDB数据库 差异 BIN() 支持,存在差异 函数入参支持类型存在差异,GaussDB入参支持类型如下: 整数类型:tinyint、smallint、mediumint、int、bigint 无符号整数类型:tinyint
”,进入函数编辑页面。 图2 新建函数页面 在函数编辑页面,在创建模板中编写函数体部分。 图3 函数体 在新建函数窗口左上方选择“选项”,在选项弹出框中设置相关信息,单击“确定”。 图4 选项 单击“执行函数”。 图5 执行函数 执行函数成功后,在页面下方消息栏查看运函数的执行情况。
数字操作函数 表1 数字操作函数列表 MySQL数据库 GaussDB数据库 差异 ABS() 支持 - ACOS() 支持 - ASIN() 支持 - ATAN() 支持 - ATAN2() 支持 - CEILING() 支持,存在差异 部分操作结果类型与MySQL不一致。对于
加密函数 表1 加密函数列表 MySQL数据库 GaussDB数据库 差异 AES_DECRYPT() 支持,存在差异 ecb为不安全加密模式,GaussDB不支持,默认为cbc模式。 GaussDB中,当指定数据库使用的字符编码是SQL_ASCII时,服务器把字节值0~127根
asswords,password函数的行为只与默认(即old_passwords为0)的行为保持一致。 当BINARY类型插入字符串长度小于目标长度时,GaussDB填充符和MySQL不同;因此入参为BINARY类型时,函数结果和MySQL不一致。 父主题: 系统函数
您即将访问非华为云网站,请注意账号财产安全