概述
UInt8、UInt16、UInt32、UInt64、Int8、Int16、Int32、Int64、Float32 或 Float64 的操作数。
在执行运算之前,两个操作数都会转换为结果类型。结果类型按如下方式确定 (除非下文的函数文档中
另有说明) :
- 如果两个操作数都不超过 32 位宽,则结果类型的大小将取两者中较大操作数所对应类型之后的下一个更大类型
(整数类型提升) 。例如,
UInt8 + UInt16 = UInt32或Float32 * Float32 = Float64。 - 如果其中一个操作数为 64 位或更宽,则结果类型的大小与两个操作数中较大的那个相同。例
如,
UInt32 + UInt128 = UInt128或Float32 * Float64 = Float64。 - 如果其中一个操作数是有符号类型,则结果类型也将是有符号类型;否则为无符号类型。例如,
UInt32 * Int32 = Int64或UInt32 * UInt32 = UInt64。
abs
x 的绝对值。如果 x 是无符号类型,则不会产生任何影响。如果 x 是有符号类型,则返回无符号数。
语法
x— 需要求绝对值的值
x 的绝对值
示例
使用示例
Query
Response
avg2
x1, x2]— 接受两个用于计算平均值的参数。
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
byteSwap
- 将十进制整数转换为对应的大端十六进制格式,即 3351772109 -> C7 C7 FB CD (4 字节)
- 将字节顺序反转,即 C7 C7 FB CD -> CD FB C7 C7
- 假定结果为大端格式,将其转换回整数,即 CD FB C7 C7 -> 3455829959 该函数的一个用例是反转 IPv4:
x— 整数值。(U)Int*
x。(U)Int*
示例
使用示例
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
divide
a 和 b 的商。结果类型始终为 Float64。
整数除法请使用 intDiv 函数。
除数为
0 时,会返回 inf、-inf 或 nan。x— 被除数;y— 除数
Query
Response
Query
Response
divideDecimal
result_scale 参数 (取值范围为 [0, 76] 的常量 Integer) 显式指定。若未指定,则结果标度为给定参数中的最大标度。
此函数的执行速度明显慢于常规的
divide。
如果你并不需要受控精度和/或需要更快的计算速度,请考虑使用 divide。Decimal256
示例
示例 1
Query
Response
Query
Response
divideOrNull
divide 相同,但在除数为零时返回 NULL。
语法
x— 被除数 -y— 除数
Query
Response
gcd
x— 第一个整数 -y— 第二个整数
x 和 y 的最大公因数。
示例
使用示例
Query
Response
ifNotFinite
isFinite(x) ? x : y。
语法
- 如果
x是有限值,则返回x。 - 如果
x不是有限值,则返回y。
Query
Response
intDiv
x 和 y 执行整数除法。也就是说,
计算向下取整后的商。
结果与被除数 (第一个参数) 的位宽相同。
当除以零、商超出被除数的取值范围,或将最小负数除以负一时,
会抛出异常。
语法
x— 左操作数。-y— 右操作数。
x 与 y 整数相除的结果
示例
两个浮点数的整数除法
Query
Response
Query
Response
intDivOrNull
intDiv 相同,但在除数为零或将最小负数除以负一时返回 NULL。
语法
x 与 y 做整数除法的结果,或 NULL。
示例
被零除的整数除法
Query
Response
Query
Response
intDivOrZero
intDiv 相同,但在除数为零,或将最小负数除以负一时返回零。
语法
a 与 b 做整数除法的结果,或为零。
示例
整数除以零
Query
Response
Query
Response
isFinite
NaN,则返回 1,
否则返回 0。
语法
NaN,则返回 1;否则返回 0。
示例
测试一个数是否为有限值
Query
Response
isInfinite
1;否则返回 0。
请注意,参数为 NaN 时也会返回 0。
语法
1;否则返回 0 (NaN 也返回 0) 。
示例
判断一个数值是否为无穷大
Query
Response
isNaN
NaN,则返回 1,否则返回 0。
语法
NaN,则返回 1;否则返回 0
示例
使用示例
Query
Response
lcm
x 和 y 的最小公倍数。
当除以零,或将最小负数除以负一时,会抛出异常。
语法
x 和 y 的最小公倍数。(U)Int*
示例
用法示例
Query
Response
max2
x 和 y 中较大的值。
语法
x— 第一个值(U)Int8/16/32/64或Float*或Decimaly— 第二个值(U)Int8/16/32/64或Float*或Decimal
x 和 y 中的较大值。 Float64
示例
用法示例
Query
Response
midpoint
x1[, x2, ...]— 接受单个值或多个值,并对其求平均值。
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
min2
x 和 y 中较小的一个。
语法
x— 第一个值(U)Int8/16/32/64或Float*或Decimaly— 第二个值(U)Int8/16/32/64或Float*或Decimal
x 和 y 中较小的值。 Float64
示例
使用示例
Query
Response
minus
a 和 b 的差值。结果始终为带符号数。
与 plus 类似,也可以用日期或日期时间减去一个整数。
此外,也支持两个日期时间相减,结果为它们之间的时间差。
语法
x— 被减数。 -y— 减数。
Query
Response
Query
Response
modulo
mod
参数
a— 被除数 -b— 除数 (模数)
Query
Response
moduloLegacy
% 运算符的旧版取模实现,对于负参数,可能会产生负结果。保留此函数是为了兼容旧版表分区逻辑。标准行为请使用 modulo 或 positiveModulo。
语法
(U)Int* 或 Float*
示例
基本用法
Query
Response
moduloOrNull
a 除以 b 的余数。与函数 modulo 类似,不同之处在于当右侧参数为 0 时,moduloOrNull 会返回 NULL。
语法
modOrNull
参数
返回值
返回 x 除以 y 的余数;当除数为零时,返回 NULL。
示例
除数为零时的 moduloOrNull
Query
Response
moduloOrZero
0 时,返回 0。
示例
使用示例
Query
Response
multiply
x 和 y 的乘积。
语法
Query
Response
multiplyDecimal
result_scale 参数 (取值范围为 [0, 76] 的常量 Integer) 显式指定。若未指定,则结果标度为给定参数中的最大标度。
这些函数的运行速度明显慢于常规的
multiply。
如果你并不需要受控精度和/或希望快速计算,请考虑使用 multiplyDecimal256
示例
使用示例
Query
Response
Query
Response
Query
Response
negate
x 取反。结果始终为有符号数。
语法
x— 要取负值的值。
x 的相反数 -x。
示例
使用示例
Query
Response
plus
x 和 y 的和。别名:x + y (运算符) 。
整数可以与日期或日期时间相加。前一种
运算会增加日期中的天数,后一种运算
会增加日期时间中的秒数。
日期也可以与时间相加。将 Date 与 Time
相加会生成 DateTime。将 Date 与 Time64 相加,或将 Date32 与
Time 或 Time64 相加,会生成 DateTime64。
语法
x— 左操作数。 -y— 右操作数。
Query
Response
Query
Response
Query
Response
positiveModulo
x 除以 y 的余数。与函数
modulo 类似,不同之处在于 positiveModulo 始终返回非负数。
语法
positive_modulo, pmod
参数
返回值
返回 x 与不大于 x 且能被 y 整除的最大整数之间的差值。
示例
用法示例
Query
Response
positiveModuloOrNull
a 除以 b 的余数。与函数 positiveModulo 类似,不同之处在于,如果右侧参数为 0,positiveModuloOrNull 将返回 NULL。
语法
positive_modulo_or_null, pmodOrNull
参数
x— 被除数。(U)Int*/Float32/64。-y— 除数 (模数) 。(U)Int*/Float32/64。
x 与不大于 x 且可被 y 整除的最大整数之差;当除数为零时,返回 null。
示例
positiveModuloOrNull
Query
Response