TDSQL-C MySQL 版 四则运算支持说明

目前只读分析引擎支持大部分 MySQL 的四则运算逻辑,但在部分场景下仍然存在限制和不兼容。这里说明在只读分析引擎中四则运算的支持情况,针对输入参数中的类型限制进行了列举。如存在文档中未提到的入参与使用方法则均不支持。

相关产品
TDSQL-C MySQL 版 产品页,含版本规格、价格与购买入口。

一、四则运算使用限制

·Decimal 类型的除法运算:结果的小数位数会基于被除数的小数位数 + 4进行截断。如 Decimal(9, 1) / Decimal(9, 1),则结果的小数位数会基于5进行截断。

·Decimal 的加、减、乘、除运算:若结果的总长度超过65,则会报错提示“out of range”。因为在只读分析引擎中 Decimal 支持的数据类型长度最大为65。

·任意数字类型与浮点数类型(float、double)进行数学运算:均会存在精度误差问题,核心原因是 Double 等浮点类型本身就不是严格精度的字段类型。在 MySQL 的实践中也不建议数字类型与浮点类型进行数学计算。

·非数值类型的四则运算:涉及到隐式转换,受限于只读分析引擎的 CAST 函数支持情况,在某些场景下,如果 CAST 不支持,相关四则运算也不支持。详细的 CAST 支持情况,请参见 类型转换函数支持说明。

二、+ 加运算符

语法:op1 + op2
op1支持值类型:int,bigint,float,double,decimal。
op2支持值类型:int,bigint,float,double,decimal。

三、- 减运算符

语法:op1 – op2
op1支持值类型:int,bigint,float,double,decimal。
op2支持值类型:int,bigint,float,double,decimal。

四、* 乘运算符

语法:op1 op2
op1支持值类型:int,bigint,float,double,decimal。
op2支持值类型:int,bigint,float,double,decimal。

五、/ 除以运算符

语法:op1 / op2
op1支持值类型:int,bigint,float,double,decimal。
op2支持值类型:int,bigint,float,double,decimal。

六、% 取余运算符

语法:op1 % op2
op1支持值类型:int,bigint,float,double,decimal。
op2支持值类型:int,bigint,float,double,decimal。

赞 (0)
上一篇 4天前
下一篇 4天前