本文介绍 SparkSQL 中的数学函数语法。
round(DOUBLE a):返回对 a 四舍五入的 BIGINT 值,取整。
round(DOUBLE a, INT d):返回 DOUBLE 型 d 的保留 n 位小数的 DOUBLW 型的近似值。
示例 1:select round(3.1415926)
示例 2:select round(3.1415926,2)
推荐使用 FineDataLink 新增计算列 中的 ROUND 函数。
bround(DOUBLE a):银行家舍入法(1~4:舍,6~9:进,5->前位数是偶:舍,5->前位数是 奇:进)。
bround(DOUBLE a, INT d):银行家舍入法,保留 d 位小数
示例1:select bround(4.5) 结果为:4
示例2:select bround(3.145,2) 结果为:3.14
floor(DOUBLE a):向下取整,最数轴上最接近要求的值的左边的值。
示例:select floor(3.14)
推荐使用 FineDataLink 新增计算列 中的 FLOOR 函数。
ceil(DOUBLE a):求其不小于给定实数的最小整数。
ceiling(DOUBLE a):求其不小于给定实数的最小整数.
示例 1:select ceil(-4.1)
示例 2:select ceiling(-4.1)
推荐使用 FineDataLink 新增计算列 中的 CEILING 函数。
rand():返回一个 0 到 1 范围内的随机数。
rand(INT seed):返回一个 0 到 1 范围内的随机数。如果指定种子 seed,则会等到一个稳定 的随机数序列。
示例 1:select rand(),rand()
示例 2:select rand(8),rand(8)
推荐使用 FineDataLink 新增计算列 中的 RAND 函数。
exp(DOUBLE a), exp(DECIMAL a):返回 e 的 a 幂次方, a 可为小数。
示例:select exp(0),exp(1.11)
推荐使用 FineDataLink 新增计算列 中的 EXP 函数。
ln(DOUBLE a), ln(DECIMAL a):以自然常数 e 为底 d 的对数,a 可为小数。
示例:select ln(2),ln(2.1)
推荐使用 FineDataLink 新增计算列 中的 LN 函数。
log10(DOUBLE a) 或者 log10(DECIMAL a):以 10 为底 d 的对数,a 可为小数。
示例:在数据转换中使用 SparkSQL ,输入语句:select log10(10),如下图所示:
在数据转换中使用 SparkSQL ,输入语句:selectlog10(10.11),如下图所示:
log2(DOUBLE a)或者 log2(DECIMAL a):以 2 为底数 d 的对数,a 可为小数。
示例:select log2(2),结果如下图所示:
log(DOUBLE base, DOUBLE a),log(DECIMAL base, DECIMAL a):以 base 为底的 a 对数。
示例:select col1,COL2,log(col1,COL2) from TV
推荐使用 FineDataLink 新增计算列 中的 LOG 函数。
pow(DOUBLE a, DOUBLE p), power(DOUBLE a, DOUBLE p):计算 a 的 p 次幂。
示例:select col1,COL2,pow(col1,COL2) from TV
推荐使用 FineDataLink 新增计算列 中的 POWER 函数。
sqrt(DOUBLE a), sqrt(DECIMAL a):计算 a 的平方根。
示例:select col1,COL2,sqrt(col1),sqrt(col2) from TV
推荐使用 FineDataLink 新增计算列 中的 SQRT 函数。
abs(DOUBLE a),abs(DECIMAL a):计算 a 的绝对值。
示例:select abs(-3.1),abs(0)
推荐使用 FineDataLink 新增计算列 中的 ABS 函数。
pmod(INT a, INT b), pmod(DOUBLE a, DOUBLE b):a 除以 b 取余。
示例:select pmod(2,3),pmod(-4,2)
推荐使用 FineDataLink 新增计算列 中的 MOD 函数。
推荐使用FineDataLink 新增计算列 中的函数。
e():数学常量 e。
pi():数学常量Π。
示例:select e(),pi()结果如下图所示:
negative(INT a) 或者 negative(DOUBLE a):返回 a 的相反数。
示例:select negative(1)结果如下图所示:
factorial(INT a):求 a 的阶乘。
示例:select factorial(5) ,结果如下图所示:
cbrt(DOUBLE a):求 a 的立方根。
示例 :select cbrt(512)结果如下图所示:
greatest(T v1, T v2, ...):求最大值。
least(T v1, T v2, ...):求最小值。
示例 1:select greatest(col1,col2) from TV
示例 2:select least(col1,col2) from TV
推荐使用 FineDataLink 新增计算列 中的 MAX 最大值、MIN 最小值。
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
Submitted successfully
Network busy