MySQL中的数值函数
加减乘除(+、-、*、/)均可用于数值计算。
SELECT (1 + 1) / (1 * 2.2 - 3)
执行算术函数
单参数数值函数举例:
acos(x), asin(x), atan(x), cos(x), cot(x), exp(x), ln(x), sin(x), sqrt(x), tan(x)
mod()函数:求模操作。
mysql> SELECT MOD(10, 4);
+------------+
| MOD(10, 4) |
+------------+
| 2 |
+------------+
1 row in set (0.00 sec)
mod()函数主要用于整数,但是MySQL还可以用它来处理实数:
mysql> SELECT MOD(10.3, 4);
+--------------+
| MOD(10.3, 4) |
+--------------+
| 2.3 |
+--------------+
1 row in set (0.00 sec)
pow():求幂操作。
mysql> SELECT POW(2,8);
+----------+
| POW(2,8) |
+----------+
| 256 |
+----------+
1 row in set (0.07 sec)
ceil()函数向上截取整数;floor()函数向下截取整数。
mysql> SELECT CEIL(121.22), FLOOR(321.233);
+--------------+----------------+
| CEIL(121.22) | FLOOR(321.233) |
+--------------+----------------+
| 122 | 321 |
+--------------+----------------+
1 row in set (0.00 sec)
round()函数:四舍五入。
mysql> SELECT ROUND(23.4), ROUND(1.34567, 3);
+-------------+-------------------+
| ROUND(23.4) | ROUND(1.34567, 3) |
+-------------+-------------------+
| 23 | 1.346 |
+-------------+-------------------+
1 row in set (0.00 sec)
truncate()函数:去掉不需要的小数位。
mysql> SELECT TRUNCATE(12.4567,1);
+---------------------+
| TRUNCATE(12.4567,1) |
+---------------------+
| 12.4 |
+---------------------+
1 row in set (0.00 sec)
truncate()和round()函数都可以为第二个参数指定一个负数,表是小数点左侧需要被截取或取整多少位:
mysql> SELECT ROUND(17, -1), TRUNCATE(17,-1);
+---------------+-----------------+
| ROUND(17, -1) | TRUNCATE(17,-1) |
+---------------+-----------------+
| 20 | 10 |
+---------------+-----------------+
1 row in set (0.00 sec)
处理有符号数
sign()函数:在参数小于0时返回-1,在参数为0时返回0,在参数大于0时返回1;
abs()函数:返回参数的绝对值。
SELECT account_id, SIGN(avail_balance), ABS(avail_balance)
FROM account;
MySQL中的数值函数的更多相关文章
- Mysql中的常用函数:
Mysql中的常用函数: 1.字符串函数: (1).合并字符串 concat():// concat('M','y',"SQL",'5.5');== MySQL5.5//当传入的参 ...
- mysql中常用函数简介(不定时更新)
常用函数version() 显示当前数据库版本database() 返回当前数据库名称user() 返回当前登录用户名inet_aton(IP) 返回IP地址的数值形式,为IP地址的数学计算做准备in ...
- MySQL中You can't specify target table for update in FROM clause一场
mysql中You can't specify target table <tbl> for update in FROM clause错误的意思是说,不能先select出同一表中的某些值 ...
- MySql中in和exists效率
mysql中的in语句是把外表和内表作hash 连接,而exists语句是对外表作loop循环,每次loop循环再对内表进行查询.一直大家都认为exists比in语句的效率要高,这种说法其实是不准确的 ...
- [原创]MYSQL中利用外键实现级联删除和更新
MySQL中利用外键实现级联删除.更新 MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在创建索引的时候,可以指定 ...
- mysql中的多行查询结果合并成一个
SELECT GROUP_CONCAT(md.data1) FROM DATA md,contacts cc WHERE md.conskey=cc.id AND md.mimetype_id= 5 ...
- 【转】MySql中的函数
原文:http://www.cnblogs.com/kissdodog/p/4168721.html MySQL数据库提供了很多函数包括: 数学函数: 字符串函数: 日期和时间函数: 条件判断函数: ...
- sqlserver 中数据导入到mysql中的方法以及注意事项
数据导入从sql server 到mysql (将数据以文本格式从sqlserver中导出,注意编码格式,再将文本文件导入mysql中): 1.若从slqserver中导出的表中不包含中文采用: bc ...
- MySQL中有关TIMESTAMP和DATETIME的总结
一.MySQL中如何表示当前时间? 其实,表达方式还是蛮多的,汇总如下: CURRENT_TIMESTAMP CURRENT_TIMESTAMP() NOW() LOCALTIME LOCALTIME ...
随机推荐
- 多线程——工具类之Semaphore
一.Semaphore功能介绍 Semaphore类相当于线程计数器,在获取Semaphore对象时设定可以产生的线程总数(线程并不是Semaphore类生成的,它只是统计线程的数量),创建Semap ...
- 【Python】 linux中python命令的命令行参数
Python命令行参数 原文地址:http://blog.163.com/weak_time/blog/static/25852809120169333247925/ Python的命令行参数,提供了 ...
- iOS 跑马灯带图片可点击
项目中有个需求,需要以跑马灯的形势滚动展示用户的实时数据,跑马灯需要有用户头像,内容的长度不固定,并且可以点击,滚动效果还要足够流畅,本着不重复造轮子的心理,在网上各种搜索,发现都没法找到满足需求的d ...
- [bzoj1497][NOI2006]最大获利_网络流_最小割
最大获利 bzoj-1497 题目大意:可以建立一个点,花费一定的代价:将已经建立的两个点之间连边,得到一定收益.有些节点之间是不允许连边的. 注释:1<=点数<=5,000,1<= ...
- netstat/ps用法
1.netstat 语法 命令1:netstat -antp | grep :80(查看80端口被哪个服务占用)or netstat -antpuel | grep ":22&qu ...
- 网络1711-1712班 c 语言评分总表一览
学号 姓名 作业地址 PTA实验作业5分 PTA排名2分 阅读代码2分 总结1分 代码规范扣分-2--0 总分 是否推荐博客 1 **莹 http://www.cnblogs.com/wwwwxy12 ...
- 201621123050 《Java程序设计》第11周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1. 源代码阅读:多线程程序BounceThread 1.1 BallR ...
- Bate版敏捷冲刺报告--day0
1 团队介绍 团队组成: PM:齐爽爽(258) 小组成员:马帅(248),何健(267),蔡凯峰(285) Git链接:https://github.com/WHUSE2017/C-team 2 ...
- 《Language Implementation Patterns》之 符号表
前面的章节我们学会了如何解析语言.构建AST,如何访问重写AST,有了这些基础,我们可以开始进行"语义分析"了. 在分析语义的一个基本方面是要追踪"符号",符号 ...
- 小草手把手教你LabVIEW串口仪器控制—安装使用仪器现有驱动
声明:很多仪器是没有驱动的.所以,具体问题具体分析.另外声明:所谓的驱动,也就是封装好的底层的串口通信程序,也是程序而已,只不过别人帮你做成了子 VI,让自己容易用.所以:不要弄混淆了概念.国外的很多 ...