增城住房和城乡建设局网站,百度广告安装入口,菏泽官方网站,青岛做网站方案PostgreSQL函数与操作符-数学函数和操作符
PostgreSQL提供了许多数学函数和操作符#xff0c;以处理数值数据。以下是一些常用的数学函数和操作符#xff1a;
PostgreSQL数学操作符
下表展示了所有可用的数学操作符。
操作符描述例子结果加2 35-减2 - 3-1*乘2 * 36/除以处理数值数据。以下是一些常用的数学函数和操作符
PostgreSQL数学操作符
下表展示了所有可用的数学操作符。
操作符描述例子结果加2 35-减2 - 3-1*乘2 * 36/除整数除法截断结果4 / 2%模取余5 % 4^指数从左至右结合2.0 ^ 3.0 8|/平方根|/ 25.05||/立方根||/27.0!阶乘5 !120!!阶乘前缀操作符!! 5绝对值 -5.05按位与91 1511|按位或32 | 335#按位异或17 # 520~按位求反~2-2按位左移1 416按位右移8 22
按位操作操作符只能用于整数数据类型而其它的操作符可以用于全部数字数据类型。按位操作的操作符还可以用于位串类型bit和bit varying
PostgreSQL数学函数
下表显示了可用的数学函数。在该表中dp表示double precision。这些函数中有许多都有多种不同的形式区别是参数不同。除非特别指明任何特定形式的函数都返回和它的参数相同的数据类型。 处理double precision数据的函数大多数是在宿主系统的 C 库基础上实现的因此边界情况下的准确度和行为是根据宿主系统而变化的。
函数返回类型描述例子结果abs(x)和输入相同绝对值abs(-17.4)17.4cbrt(dp)dp立方根cbrt(27.0) 3ceil(dp or numeric)和输入相同不小于参数的最近的整数ceil(-42.8)-42ceiling(dp or numeric)和输入相同不小于参数的最近的整数ceil的别名ceiling(-95.3)-95degrees(dp)dp把弧度转为角度degrees(0.5)28.6478897565412div(y numeric, x numeric)numericy/x的整数商div(9,4)2exp(dp or numeric)和输入相同指数exp(1.0)2.71828182845905floor(dp or numeric)和输入相同不大于参数的最近的整数floor(-42.8)-43ln(dp or numeric)和输入相同自然对数ln(2.0)0.693147180559945log(dp or numeric)和输入相同以10为底的对数log(100.0)2log10(dp or numeric)和输入相同以10为底的对数log10(100.0)2log(b numeric, x numeric)numeric以b为底的对数log(2.0, 64.0)6.0000000000mod(y, x)和参数类型相同y/x的余数mod(9,4)1pi()dp“π”常数pi()3.14159265358979power(a dp, b dp)dp求a的b次幂power(9.0, 3.0)729power(a numeric, b numeric)numeric求a的b次幂power(9.0, 3.0)729radians(dp)dp把角度转为弧度radians(45.0)0.785398163397448round(dp or numeric)和输入相同圆整为最接近的整数round(42.4)42round(v numeric, s int)numeric圆整为s位小数数字round(42.4382, 2)42.44scale(numeric)integer参数的精度小数点后的位数scale(8.41)2sign(dp or numeric)和输入相同参数的符号-1, 0, 1sign(-8.4)-1sqrt(dp or numeric)和输入相同平方根sqrt(2.0)1.4142135623731trunc(dp or numeric)和输入相同截断向零靠近trunc(42.8)42trunc(v numeric, s int)numeric截断为s位小数位置的数字trunc(42.4382, 2)42.43width_bucket(op dp, b1 dp, b2 dp, count int)int返回一个桶号这个桶是在一个柱状图中operand将被分配的那个桶该柱状图有count个散布在范围b1到b2上的等宽桶。对于超过该范围的输入将返回0或者count1width_bucket(5.35, 0.024, 10.06, 5)3width_bucket(op numeric, b1 numeric, b2 numeric, count int)int返回一个桶号这个桶是在一个柱状图中operand将被分配的那个桶该柱状图有count个散布在范围b1到b2上的等宽桶。对于超过该范围的输入将返回0或者count1width_bucket(5.35, 0.024, 10.06, 5)3width_bucket(operand anyelement, thresholds anyarray)int返回一个桶号这个桶是在给定数组中operand 将被分配的桶该数组列出了桶的下界。对于一个低于第一个下界的输入返回 0。thresholds数组必须被排好序 最小的排在最前面否则将会得到意想不到的结果width_bucket(now(), array[‘yesterday’, ‘today’, ‘tomorrow’]::timestamptz[])2
PostgreSQL随机数的函数
下表展示了用于产生随机数的函数
函数返回类型描述random()dp范围 0.0 x 1.0 中的随机值setseed(dp)void为后续的random()调用设置种子值为于 -1.0 和 1.0 之间包括边界值
PostgreSQL可用的双曲函数
下表显示的是可用的双曲函数。 所有这些函数接收参数并返回类型为double precision的值。
函数描述举例结果sinh(x)双曲正弦sinh(0)0cosh(x)双曲余弦cosh(0)1tanh(x)双曲切线tanh(0)0asinh(x)反双曲正弦asinh(0)0acosh(x)反双曲余弦acosh(1)0atanh(x)反双曲切线atanh(0)0