Mysql学习MySQL笔记之数学函数详解
《Mysql学习MySQL笔记之数学函数详解》要点: MYSQL必读绝对值函数ABS(x)和圆周率函数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) MYSQL必读平方根函数SQRT(x)和求余函数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) MYSQL必读取整函数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必读mysql> SELECT FLOOR(2.3),FLOOR(-2.3); CEIL(x)和CEILING(x)返回大于或等于x的最小整数 MYSQL必读FLOOR(x)返回小于或等于x的最大整数 MYSQL必读随机数函数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)这两个函数丢失返回0~1的随机数 MYSQL必读区别在于,RAND()返回的数是完全随机的,而RAND(x)在x相同时返回的值相同 MYSQL必读四舍五入函数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最近的整数,也就是对x进行四舍五入处理 MYSQL必读ROUND(x,y)返回x保留到小数点后y位的值,在截取时进行四舍五入处理 代码如下:mysql> SELECT TRUNCATE(2.53,TRUNCATE(2.55,1); +------------------+------------------+ | TRUNCATE(2.53,1) | TRUNCATE(2.55,1) | +------------------+------------------+ |????????????? 2.5 |????????????? 2.5 | +------------------+------------------+ ?row in set (0.00 sec) TRUNCATE(x,不进行四舍五入操作 MYSQL必读符号函数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为负数,0不变,1为整数 MYSQL必读 mysql> SELECT POW(3,2),POWER(3,2); +----------+------------+ | POW(3,2) | POWER(3,2) | +----------+------------+ |??????? 9 |????????? 9 | +----------+------------+ ?row in set (0.00 sec) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |