#MOD

mod
MOD ( expr1 , expr2 )

MOD为取模函数,与算术运算符算法一致。

在算术运算时,YashanDB通过隐式数据转换,将参与运算的数据类型统一到某个数据类型,并按此数据类型返回运算结果,具体规则请参考算术运算符里的数据类型描述。

expr1、expr2的值为数值型,或可以转换为NUMBER类型的字符型(转换失败返回Invalid number错误)。对于其他类型,函数返回类型不支持。

当expr1或expr2中任一值为NULL时,函数返回NULL。

示例

SELECT numbera,numberb,numberc,numberd,numbere,numberf,numberg FROM numbers_nobit;
 NUMBERA NUMBERB  NUMBERC               NUMBERD     NUMBERE     NUMBERF   NUMBERG
-------- ------- -------- --------------------- ----------- ----------- ---------
      -5      55     5555   5555555555555555555  5.555E+000  5.556E+000       555
 
 
SELECT MOD(numberb,numbera) mod1,
MOD(numberd,numbere) mod2,
MOD(numberf,numberc) mod3,
MOD(numbera,'17') mod4,
MOD(numberf,0) mod5
FROM numbers_nobit;
                 MOD1        MOD2        MOD3        MOD4        MOD5
--------------------- ----------- ----------- ----------- -----------
                    0  3.794E+000  5.556E+000          -5  5.556E+000
 
SELECT TYPEOF(MOD(numberb,numbera)) type1,
TYPEOF(MOD(numberd,numbere)) type2,
TYPEOF(MOD(numberf,numberc)) type3,
TYPEOF(MOD(numbera,'17')) type4,
TYPEOF(MOD(numberf,0)) type5
FROM numbers_nobit;
TYPE1     TYPE2     TYPE3     TYPE4     TYPE5       
--------- --------- --------- --------- ---------   
bigint    float     double    number    double
pdf-btn 下载文档
copy-btn 复制链接