本文介绍对那些没有通用数学约定的类型进行数值改变操作(例如,日期/时间类型)的实际动作。
下面的表显示了允许使用的数学函数。通过使用不同的参数类型,以多种方式使用这些函数。除非特别说明,任何形式的函数都返回和它的参数类型相同的值。对DOUBLE PRECISION类型数据进行操作的函数是在主机系统C程序库的顶层实现,根据所运行的主机平台,在界限的精度和系统行为方面是有所不同。
函数 | 返回类型 | 描述 | 示例 | 结果 |
---|---|---|---|---|
ABS(x) | Same as X | Absolute value | ABS(-17.4) | 17.4 |
CEIL(DOUBLE PRECISION or NUMBER) | Same as input | Smallest integer not less than argument | CEIL(-42.8) | -42 |
EXP(DOUBLE PRECISION or NUMBER) | Same as input | Exponential | EXP(1.0) | 2.71828182845904 52 |
FLOOR(DOUBLE PRECISION or NUMBER) | Same as input | Largest integer not greater than argument | FLOOR(-42.8) | 43 |
LN(DOUBLE PRECISION or NUMBER) | Same as input | Natural logarithm | LN(2.0) | 0.69314718055994 53 |
LOG(b NUMBER, X NUMBER) | NUMBER | Logarithm to base b | LOG(2.0, 64.0) | 6.00000000000000 00 |
MOD(y, X) | Same as argument types | Remainder of y/x | MOD(9, 4) | 1 |
NVL(x, y) | Same as argument types; where both arguments are of the same data type | If X is null, then NVL returns y | NVL(9, 0) | 9 |
POWER(a DOUBLE PRECISION, b DOUBLE PRECISION) | DOUBLE PRECISION | a raised to the power of b | POWER(9.0, 3.0) | 729.000000000000 0000 |
POWER(a NUMBER, b NUMBER) | NUMBER | a raised to the power of b | POWER(9.0, 3.0) | 729.000000000000 0000 |
ROUND(DOUBLE PRECISION or NUMBER) | Same as input | Round to nearest integer | ROUND(42.4) | 42 |
ROUND(v NUMBER, s INTEGER) | NUMBER | Round to s decimal places | ROUND(42.4382, 2) | 42.44 |
SIGN(DOUBLE PRECISION or NUMBER) | Same as input | Sign of the argument (-1, 0, +1) | SIGN(-8.4) | -1 |
SQRT(DOUBLE PRECISION or NUMBER) | Same as input | Square root | SQRT(2.0) | 1.41421356237309 5 |
TRUNC(DOUBLE PRECISION or NUMBER) | Same as input | Truncate toward zero | TRUNC(42.8) | 42 |
TRUNC(v NUMBER, s INTEGER) | NUMBER | Truncate to s decimal places | TRUNC(42.4382, 2) | 42.43 |
WIDTH BUCKET( op NUMBER, b1 NUMBER, b2 NUMBER, count INTEGER) | INTEGER | Return the bucket to which op would be assigned in an equidepth histogram with count buckets, in the range b1 to b2 | WIDTH BUCKET(5.35, 0.024, 10.06, 5) | 3 |
下面的表显示了允许使用的三角函数,所有的三角函数的参数和返回值类型都是DOUBLE PRECISION。
函数 | 描述 |
---|---|
ACOS(x) | Inverse cosine |
ASIN(x) | Inverse sine |
ATAN(x) | Inverse tangent |
ATAN2(x, y) | Inverse tangent of x/y |
COS(x) | Cosine |
SIN(x) | Sine |
TAN(x) | Tangent |