MySQL常见数值函数整理

 更新时间:2023年02月28日 09:15:50   作者:大虾好吃吗  
MySQL中另外一类很重要的函数就是数值函数,这些函数能处理很多数值方面的运算,下面这篇文章主要给大家介绍了关于MySQL常见数值函数整理的相关资料,需要的朋友可以参考下

绝对值函数

语法格式:ABS(X)

例:查看三个数值的绝对值(负的绝对值为它的正整数,0的绝对值为0,正的绝对值为它本身)。

mysql> select abs(2),abs(-32),abs(-0.5);
+--------+----------+-----------+
| abs(2) | abs(-32) | abs(-0.5) |
+--------+----------+-----------+
|      2 |       32 |       0.5 |
+--------+----------+-----------+
1 row in set (0.01 sec)

求余函数

语法格式:MOD(N,M), N % M, N MOD M

例:查看三个数值,三个方法查看取余。

mysql> select mod(10,3),20%3,15 mod 4;
+-----------+------+----------+
| mod(10,3) | 20%3 | 15 mod 4 |
+-----------+------+----------+
|         1 |    2 |        3 |
+-----------+------+----------+
1 row in set (0.00 sec)

获取整数的函数

语法格式:CEIL(X)、CEILING(x) 、FLOOR(x)

例:ceil和ceiling返回不小于x的最小整数,floor返回不大于x的最大整数。

mysql> select ceil(2.1234),ceiling(3.1234),floor(4.1234);
+--------------+-----------------+---------------+
| ceil(2.1234) | ceiling(3.1234) | floor(4.1234) |
+--------------+-----------------+---------------+
|            3 |               4 |             4 |
+--------------+-----------------+---------------+
1 row in set (0.00 sec)

获取随机数的函数

语法格式:RAND() 、RAND(x)

例1:rand()用于返回一个0~1之间的随机浮点数。

mysql> select rand(),rand();
+--------------------+---------------------+
| rand()             | rand()              |
+--------------------+---------------------+
| 0.8802711524816893 | 0.21204793100436026 |
+--------------------+---------------------+
1 row in set (0.00 sec)
例2:rand(x)用于返回一个0~1之间的浮点数,x作为种子值用来产生重复序列。
mysql> select rand(2),rand(2),rand(1000000);
+--------------------+--------------------+--------------------+
| rand(2)            | rand(2)            | rand(1000000)      |
+--------------------+--------------------+--------------------+
| 0.6555866465490187 | 0.6555866465490187 | 0.2644144708890603 |
+--------------------+--------------------+--------------------+
1 row in set (0.00 sec)

四舍五入的函数

语法格式:ROUND(x) 、ROUND(x,y)

例:round(x)四舍五入为整数,round(x,y)四舍五入保留后面两位小数。

mysql> select round(3.512),round(4.235,2);
+--------------+----------------+
| round(3.512) | round(4.235,2) |
+--------------+----------------+
|            4 |           4.24 |
+--------------+----------------+
1 row in set (0.00 sec)

截取数值的函数

语法格式:TRUNCATE(x,y)

例1:截取数值,保留y位。

mysql> select truncate(2.567,2),truncate(1.99,1);
+-------------------+------------------+
| truncate(2.567,2) | truncate(1.99,1) |
+-------------------+------------------+
|              2.56 |              1.9 |
+-------------------+------------------+
1 row in set (0.00 sec)

例2:截取1234为1000,截取1234为1200(负数表明把右侧的数值截取为0,看到下面的操作可以想到,把负数改为-1可以看到多少?结果为1230!)

mysql> select truncate(1234,-3),truncate(1234,-2);
+-------------------+-------------------+
| truncate(1234,-3) | truncate(1234,-2) |
+-------------------+-------------------+
|              1000 |              1200 |
+-------------------+-------------------+
1 row in set (0.00 sec)

符号函数

语法格式:SIGN(x)

例:sign(x)表示任何负数返回-1,0返回0,任何正数返回1。

mysql> select sign(-123),sign(0),sign(223);
+------------+---------+-----------+
| sign(-123) | sign(0) | sign(223) |
+------------+---------+-----------+
|         -1 |       0 |         1 |
+------------+---------+-----------+
1 row in set (0.00 sec)

幂运算函数

语法格式:POW(x,y) 、POWER(x,y)

例:两个用处相同,pow为返回2的三次方,power返回3的四次方。

mysql> select pow(2,3),power(3,4);
+----------+------------+
| pow(2,3) | power(3,4) |
+----------+------------+
|        8 |         81 |
+----------+------------+
1 row in set (0.00 sec)

总结

到此这篇关于MySQL常见数值函数的文章就介绍到这了,更多相关MySQL数值函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql遇到load data导入文件数据出现1290错误的解决方案

    mysql遇到load data导入文件数据出现1290错误的解决方案

    这篇文章主要介绍了mysql遇到load data导入文件数据出现1290错误的解决方案,非常的简单实用,有需要的小伙伴可以参考下
    2018-07-07
  • MySQL与PHP的基础与应用专题之数据查询

    MySQL与PHP的基础与应用专题之数据查询

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,本系列将带你掌握php与mysql的基础应用,本篇从数据的查询开始
    2022-02-02
  • 浅谈Mysql指定顺序排序查询

    浅谈Mysql指定顺序排序查询

    给大家用过实例分析了Mysql查询中指定顺序排序的相关技术问题,需要的朋友参考一下吧。
    2017-12-12
  • 十个节省时间的MySQL命令小结

    十个节省时间的MySQL命令小结

    编者在工作中积累起来了一些MySQL命令行客户端技巧,这些技巧或多或少会帮助您节省大量的时间。
    2011-03-03
  • Mysql GROUP BY查询每组某值最大的一条数据

    Mysql GROUP BY查询每组某值最大的一条数据

    这篇文章主要介绍了Mysql GROUP BY查询每组某值最大的一条数据问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • MySQL出现Waiting for table metadata lock异常的解决方法

    MySQL出现Waiting for table metadata lock异常

    当MySQL使用时出行Waiting for table metadata lock异常时该怎么办呢?这篇文章就来和大家讲讲解决办法,感兴趣的小伙伴可以了解一下
    2023-04-04
  • MySql视图触发器存储过程详解

    MySql视图触发器存储过程详解

    这篇文章主要介绍了MySql视图触发器存储过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • SQL语句解析执行的过程及原理

    SQL语句解析执行的过程及原理

    这篇文章主要介绍了SQL语句解析执行的过程及原理,文章主要通过获得SqlSession对象后就能执行各种CRUD方法展开全文内容需要的小伙伴可以参考一下,希望对你有所帮助
    2022-03-03
  • MySQL8.0无法启动3534的解决方法

    MySQL8.0无法启动3534的解决方法

    本文主要是记录一下自己使用MySQL的一次踩坑经历,我的MySQL安装好后,使用一周后的同一时间必定报连接失败,然后查找发现是MySQL本地服务没有启动,下面就详细的介绍一下
    2021-06-06
  • 一个字段同时满足多个条件的查询

    一个字段同时满足多个条件的查询

    当一个字段需要同时等于多个值的时候,用and直接连不会有数据查出。
    2011-08-08

最新评论