+-
加法:
mysql> select 3+5; -> 8 --
减法:
mysql> select 3-5; -> -2 *-
乘法:
mysql> select 3*5; -> 15 mysql> select 18014398509481984*18014398509481984.0; -> 324518553658426726783156020576256.0 mysql> select 18014398509481984*18014398509481984; -> 0最后一个表达式的结果是错误的,这是因为乘法结果超过了 64 位bigint计算范围。 /-
除法:
mysql> select 3/5; -> 0.60被 0 除将返回一个null结果:mysql> select 102/(1-1); -> null只有当在一个结果被转换到一个整数的语境中执行时,除法将会以bigint进行算术计算。
6.3.3.2 数学函数
所有的数学函数在发生错误的情况下,均返回 null。
--
一元减。 改变参数的符号:
mysql> select - 2; -> -2注意,如果这个操作符被用于一个bigint,返回值也是一个bigint!这就意味着,应该避免在一个可能有值-2^63的整数上使用-操作符! abs(x)-
返回
x的绝对值:mysql> select abs(2); -> 2 mysql> select abs(-32); -> 32这个函数可安全地使用于bigint值。 sign(x)-
以
-1、0或1方式返回参数的符号,它取决于参数x是负数、0 或正数。mysql> select sign(-32); -> -1 mysql> select sign(0); -> 0 mysql> select sign(234); -> 1 mod(n,m)%-
取模 (就如 c 中的
%操作符)。返回n被m除后的余数:mysql> select mod(234, 10); -> 4 mysql> select 253 % 7; -> 1 mysql> select mod(29,9); -> 2 mysql> select 29 mod 9; -> 2这个函数可安全地使用于bigint值。最后一个示例可在 mysql 4.1 中工作。 floor(x)-
返回不大于
x的最大整数值:mysql> select floor(1.23); -> 1 mysql> select floor(-1.23); -> -2注意,返回值被转换为一个bigint! ceiling(x)-
返回不小于
x的最小整数:mysql> select ceiling(1.23); -> 2 mysql> select ceiling(-1.23); -> -1注意,返回值被转换为一个bigint! round(x)round(x,d)-
将参数
x四舍五入到最近的整数,然后返回。 两个参数的形式是将一个数字四舍五入到d个小数后返回。mysql> select round(-1.23); -> -1 mysql> select round(-1.58); -> -2 mysql> select round(1.58); -> 2 mysql> select round(1.298, 1); -> 1.3 mysql> select round(1.298, 0); -> 1注意,当参数在两个整数之间时,round()的行为取决于 c 库的实现。某些取整到最近的偶数,总是向下取,总是向上取,也可能总是接近于零。如果你需要某种取整类型,应该使用一个明确定义的函数比如truncate()或floor()代替。 div-
整除。
类似于
floor(),但是它可安全地用于bigint值。mysql> select 5 div 2 -> 2
div在 mysql 4.1.0 中新加入。 exp(x)-
返回值
e(自然对数的底) 的x次方:mysql> select exp(2); -> 7.389056 mysql> select exp(-2); -> 0.135335 ln(x)-
返回
x的自然对数:mysql> select ln(2); -> 0.693147 mysql> select ln(-2); -> null这个函数在 mysql 4.0.3 被新加入。 在 mysql 中,它是log(x)的同义词。 log(x)log(b,x)-
如果以一个参数调用,它返回
x的自然对数:mysql> select log(2); -> 0.693147 mysql> select log(-2); -> null如果以两个参数调用,这个函数返回x任意底b的对数:mysql> select log(2,65536); -> 16.000000 mysql> select log(1,100); -> null任意底选项在 mysql 4.0.3 中被加入。log(b,x)等价于log(x)/log(b)。