MySQL筆記之?dāng)?shù)學(xué)函數(shù)詳解
絕對值函數(shù)ABS(x)和圓周率函數(shù)PI()
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)
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)
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)
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)
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ù)點后y位的值,在截取時進(jìn)行四舍五入處理
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ù)點后y位的值,不進(jìn)行四舍五入操作
符號函數(shù)SIGN(x)
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)
mysql> SELECT POW(3,2), POWER(3,2);
+----------+------------+
| POW(3,2) | POWER(3,2) |
+----------+------------+
| 9 | 9 |
+----------+------------+
row in set (0.00 sec)
相關(guān)文章
JMeter對MySQL數(shù)據(jù)庫進(jìn)行壓力測試的實現(xiàn)步驟
本文主要介紹了JMeter對MySQL數(shù)據(jù)庫進(jìn)行壓力測試的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01詳解MySQL 重做日志(redo log)與回滾日志(undo logo)
這篇文章主要介紹了MySQL redo與undo日志的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)MySQL,感興趣的朋友可以了解下2020-08-08MySQL5.6.31 winx64.zip 安裝配置教程詳解
這篇文章主要介紹了MySQL5.6.31 winx64.zip 安裝配置教程詳解,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-02-02一步步教你在Navicat上如何停止正在運(yùn)行的MYSQL語句
很多時候我們會提交一些耗時比較長的sql,可能出現(xiàn)mysql服務(wù)器內(nèi)存或者CPU暴增,引起報警,甚至影響其他業(yè)務(wù),下面這篇文章主要給大家介紹了關(guān)于在Navicat上如何停止正在運(yùn)行的MYSQL語句的相關(guān)資料,需要的朋友可以參考下2023-03-03MySQL中Update、select聯(lián)用操作單表、多表,及視圖與臨時表的區(qū)別
本篇文章給大家分享了MySQL中Update、select聯(lián)用操作單表、多表,及視圖與臨時表的區(qū)別,有興趣的朋友學(xué)習(xí)下吧。2018-06-06Mysql分組查詢每組最新一條數(shù)據(jù)的三種實現(xiàn)方法
我們在開發(fā)中經(jīng)常會遇到分組查詢最新數(shù)據(jù)的問題,下面這篇文章主要給大家介紹了關(guān)于Mysql分組查詢每組最新一條數(shù)據(jù)的三種實現(xiàn)方法,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-01-01