絕對值函數(shù)ABS(x)和圓周率函數(shù)PI() 復(fù)制代碼 代碼如下: mysql> SELECT ABS(0.5), ABS(-0.5), PI(); +----------+-----------+----------+ | ABS(0.5) | ABS(-0.5) | PI() | +----------+-----------+----------+ | 0.5 | 0.5 | 3.141593 | +----------+-----------+----------+ row in set (0.00 sec) 平方根函數(shù)SQRT(x)和求余函數(shù)MOD(x,y) 復(fù)制代碼 代碼如下: mysql> SELECT SQRT(16), SQRT(3), MOD(13,4); +----------+--------------------+-----------+ | SQRT(16) | SQRT(3) | MOD(13,4) | +----------+--------------------+-----------+ | 4 | 1.7320508075688772 | 1 | +----------+--------------------+-----------+ row in set (0.00 sec) 取整函數(shù)CEIL(x)、CEILING(x)和FLOOR(x) 復(fù)制代碼 代碼如下: mysql> SELECT CEIL(2.3), CEIL(-2.3), CEILING(2.3), CEILING(-2.3); +-----------+------------+--------------+---------------+ | CEIL(2.3) | CEIL(-2.3) | CEILING(2.3) | CEILING(-2.3) | +-----------+------------+--------------+---------------+ | 3 | -2 | 3 | -2 | +-----------+------------+--------------+---------------+ row in set (0.00 sec) mysql> SELECT FLOOR(2.3), FLOOR(-2.3); +------------+-------------+ | FLOOR(2.3) | FLOOR(-2.3) | +------------+-------------+ | 2 | -3 | +------------+-------------+ row in set (0.00 sec) CEIL(x)和CEILING(x)返回大于或等于x的最小整數(shù) FLOOR(x)返回小于或等于x的最大整數(shù) 隨機(jī)數(shù)函數(shù)RAND()和RAND(x) 復(fù)制代碼 代碼如下: mysql> SELECT RAND(), RAND(2), RAND(2); +--------------------+--------------------+--------------------+ | RAND() | RAND(2) | RAND(2) | +--------------------+--------------------+--------------------+ | 0.8269294489425881 | 0.6555866465490187 | 0.6555866465490187 | +--------------------+--------------------+--------------------+ row in set (0.00 sec) RAND()和RAND(x)這兩個函數(shù)丟失返回0~1的隨機(jī)數(shù) 區(qū)別在于,RAND()返回的數(shù)是完全隨機(jī)的,而RAND(x)在x相同時返回的值相同 四舍五入函數(shù)ROUND(x)、ROUND(x,y)和TRUNCATE(x,y) 復(fù)制代碼 代碼如下: mysql> SELECT ROUND(2.3), ROUND(2.5), ROUND(2.53,1), ROUND(2.55,1); +------------+------------+---------------+---------------+ | ROUND(2.3) | ROUND(2.5) | ROUND(2.53,1) | ROUND(2.55,1) | +------------+------------+---------------+---------------+ | 2 | 3 | 2.5 | 2.6 | +------------+------------+---------------+---------------+ row in set (0.00 sec) ROUND(x)返回離x最近的整數(shù),也就是對x進(jìn)行四舍五入處理 ROUND(x,y)返回x保留到小數(shù)點(diǎn)后y位的值,在截取時進(jìn)行四舍五入處理 復(fù)制代碼 代碼如下: mysql> SELECT TRUNCATE(2.53,1), TRUNCATE(2.55,1); +------------------+------------------+ | TRUNCATE(2.53,1) | TRUNCATE(2.55,1) | +------------------+------------------+ | 2.5 | 2.5 | +------------------+------------------+ row in set (0.00 sec) TRUNCATE(x,y)返回x保留到小數(shù)點(diǎn)后y位的值,不進(jìn)行四舍五入操作 符號函數(shù)SIGN(x) 復(fù)制代碼 代碼如下: mysql> SELECT SIGN(-2), SIGN(0), SIGN(2); +----------+---------+---------+ | SIGN(-2) | SIGN(0) | SIGN(2) | +----------+---------+---------+ | -1 | 0 | 1 | +----------+---------+---------+ row in set (0.00 sec) SIGN(x)返回x的符號,-1為負(fù)數(shù),0不變,1為整數(shù) 冪運(yùn)算函數(shù)POW(x,y)、POWER(x,y) 復(fù)制代碼 代碼如下: mysql> SELECT POW(3,2), POWER(3,2); +----------+------------+ | POW(3,2) | POWER(3,2) | +----------+------------+ | 9 | 9 | +----------+------------+ row in set (0.00 sec)