说明: 若发生错误,所有数学函数会返回 NULL 。
abs
求绝对值。
mysql> select abs(2-5);
+----------+
| abs(2-5) |
+----------+
| 3 |
+----------+
1 row in set (0.00 sec)
bin
将十进制数值转换为二进制数值。
MariaDB [test]> select bin(11);
+---------+
| bin(11) |
+---------+
| 1011 |
+---------+
ceiling
进一法取整。
MariaDB [test]> select ceiling(3.2);
+--------------+
| ceiling(3.2) |
+--------------+
| 4 |
+--------------+
floor
舍去法取整。
MariaDB [test]> select floor(3.2);
+------------+
| floor(3.2) |
+------------+
| 3 |
+------------+
round
四舍五入。
MariaDB [test]> select round(3.3), round(3.5);
+------------+------------+
| round(3.3) | round(3.5) |
+------------+------------+
| 3 | 4 |
+------------+------------+
mysql> select round(3.1415926, 3);
+---------------------+
| round(3.1415926, 3) |
+---------------------+
| 3.142 |
+---------------------+
truncate
截取浮点数,第二个参数指定保留的小数位数。
MariaDB [test]> select truncate(3.1415926, 2), truncate(3.1415926, 4);
+------------------------+------------------------+
| truncate(3.1415926, 2) | truncate(3.1415926, 4) |
+------------------------+------------------------+
| 3.14 | 3.1415 |
+------------------------+------------------------+
format
对数值进行千分位格式化,第二个参数指定保留的小数位数(会进行四舍五入)。
MariaDB [test]> select format(3150.46358, 2), format(3150.46358, 3);
+-----------------------+-----------------------+
| format(3150.46358, 2) | format(3150.46358, 3) |
+-----------------------+-----------------------+
| 3,150.46 | 3,150.464 |
+-----------------------+-----------------------+
1 row in set (0.00 sec)
max
取最大值。
min
取最小值。
sum
求和。
sign
返回数值的符号。(负数返回-1,0返回0,正数返回1)
MariaDB [test]> select sign(-3), sign(0), sign(3);
+----------+---------+---------+
| sign(-3) | sign(0) | sign(3) |
+----------+---------+---------+
| -1 | 0 | 1 |
+----------+---------+---------+
power
幂运算。
MariaDB [test]> select sign(-3), sign(0), sign(3);
+----------+---------+---------+
| sign(-3) | sign(0) | sign(3) |
+----------+---------+---------+
| -1 | 0 | 1 |
+----------+---------+---------+
sqrt
求平方根。
MariaDB [test]> select sqrt(9), sqrt(64);
+---------+----------+
| sqrt(9) | sqrt(64) |
+---------+----------+
| 3 | 8 |
+---------+----------+
rand
返回0~1之间的随机数。
MariaDB [test]> select rand(), rand();
+--------------------+--------------------+
| rand() | rand() |
+--------------------+--------------------+
| 0.6072439082034341 | 0.7944739868812952 |
+--------------------+--------------------+