MySQL好用的数学函数
最近项目很忙,分给我的功能都比较复杂,还好能应付的下来。在工作的过程中,我发现使用mysql的自带函数能够极大的减少程序的复杂度。这是必然的,使用mysql的函数,能够在程序里面省却很多的循环遍历。但是网上有的专家说,在mysql里面使用数学以及字符串函数,会使得mysql的效率变慢,我想这是必然的。把本来是程序应该干的事情交给了mysql去干,mysql干的越多,那么效率就越低。
那么有没有可能找到一个平衡呢?不建议,因为有大神说mysql的函数效率低,就不使用。如果这样子的话,那么干脆连mysql数据库也不要使用了吧,比mysql成熟的数据库一抓一大把。但是为什么还要使用mysql呢?免费呀(现在不免费了),既要使用mysql的优点,也要尽量避免mysql效率低的坑。也就是在做系统的使用,要问清楚这个软件的运用范围。
如果是内部系统,都知道内部系统通常业务逻辑非常复杂,功能非常细致,但是访问量比较小,也就是并发量比较小。外部系统可能也许逻辑上没有内部系统这么复杂,但是访问量比较多,并发比较大。如果是访问量比较小的软件,就可以在系统里尽可能的使用mysql的自带函数,充分降低的程序的复杂度,也利于维护。如果是访问量大的程序就要尽可能的将计算好资源的逻辑放在程序里面跑,尽可能将服务端非机密的计算放在用户端去跑。让客户端负责计算,让程序段负责逻辑,让DB端只负责数据的存储。各司其职,各用所长。
总之不能因噎废食,不能因为别人的一句话,正好顺应了自己不想学习的懒惰之心。
mysql数学函数走起,先写一部分,以后慢慢补充。
1、format(x,y) 函数,功能是将一个数字x,保留y位小数,并且整数部分用逗号分隔千分位,小数部分进行四舍五入。
需要注意的是,一旦你的数据经过千分位分隔后,就会变成字符串。能够给阅读上提供比较好的体验,但是在计算上却造成很大的困扰,所以如果只是保留小数,不建议使用这个函数。

2、abs(); 求一个数的绝对值;absolute
3、sqrt();求一个数的平方根。sqrt是sqruar(平方,矩形) ,root(根)的缩写。
4、mod(x,y) x除数,y被除数。结束是余数。

5、ceil() 进一取整。
floor()舍一取整
这两个函数是镜子函数,比较有点意思。这两个函数并不进行四舍五入,比较强硬。

6、rand() 顾名思义,是用来生成随机数用的。

7、format 会自动进行千分位,下面我们来看看round函数,进行四舍五入。

8、truncate(x,y) 比较霸道,不管四舍五入,直接把x,的y位小数直接干掉。

9、sign() 返回当前结果得符号,如果是负数返回-1,如果是0 返回0 如果是正数,返回1.

10、power() 幂运算

MySQL好用的数学函数的更多相关文章
- MYSQL的基本函数 (数学函数)
ABS(x) 返回x的绝对值 BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制) CEILING(x) 返回大于x的最小整数值 EXP(x) 返回值e(自然对数的底) ...
- MySQL 数学函数
MySQL 数学函数 所有的数学函数在发生错误的情况下,均返回 NULL. -元减.改变参数的符号 mysql> SELECT - 2; -> -2 注意,如果这个操作符被用于一个 BIG ...
- MySql常用函数数学函数、加密函数等(转—收藏)
MySql函数众多,这里只是列举了一部分常用的函数. 一.数学函数 ABS(x) // 返回x的绝对值 BI ...
- MySQL 进阶4 SQL常见函数: 字符函数/数学函数/日期函数/流程控制函数(if/case)
# 进阶4 SQL常见函数 分类: 1/单行函数: 字符函数: concat(),length(),ifnull(__,default) ,instr(), trim(),upper(),lower( ...
- mysql 函数 时间函数,数学函数,字符串函数,条件判断函数
=========================================== mysql 相关函数 ============================================= ...
- MySql cmd下的学习笔记 —— 有关常用函数的介绍(数学函数,聚合函数等等)
(一)数学函数 abs(x) 返回x的绝对值 bin(x) 返回x的二进制(oct返回八进制,hex返回十六进制) ceiling(x) ...
- 转MYSQL学习(三) 函数
这一节主要介绍MYSQL里的函数,MYSQL里的函数很多,我这里主要介绍MYSQL里有而SQLSERVER没有的函数 数学函数 1.求余函数MOD(X,Y) MOD(X,Y)返回x被y除后的余数,MO ...
- MySQL数据库—日期与时间函数
一. 日期和时间函数 函数的概念:按指定格式输入参数,返回正确结果的运算单元 1. 返回当前日期:curdate() current_date() current_date()+0可以将当前日期转换为 ...
- mysql中的内置函数
这里主要介绍mysql丰富的内置函数. 数学函数 数学函数相对比较简单,就是涉及一些数值的计算,这里列出数学函数的功能,仅个别给出实例. 函数 作 用 ABX(x) 返回x的绝对值 CEIL(X),C ...
随机推荐
- MySQL for mac使用记录
一.登录 打开终端,输入/usr/local/mysql/bin/mysql -u root -p 初次进入mysql,密码为空.当出现mysql>提示符时,表示你已经进入mysql中.键入ex ...
- Java 的世界,我不懂:奇葩的 json 序列化
先上张图,代表我心中的十万头草泥马: 写这么长的代码,头回见数组和单个实体共用同一个 json 节点的! 恐怕只有 java 社区的大牛B 才能做出这等事.. 由 Apache 发布: http:// ...
- idea配置。
1.project Structure — 修改project(1.name,sdk,level(6-@Override in interface)) 修改modules(点击web,加上source ...
- JavaScript精要
写在开篇之前 这个系列都文章算是我最近研究了JavaScript(以后简称js)大半个月的一点心得吧.记得以前看过罗小平的一本书叫<Delphi精要>,我也就姑且起名叫<JavaSc ...
- 3n+1b 备忘录方法
题目详情 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去,最后一定在某一步得到n=1.卡拉兹在1950年的世界数学家大会上公布了这个猜 ...
- 【python】 [基础] 数据类型,字符串和编码
python笔记,写在前面:python区分大小写1.科学计数法,把10用e代替,1.23x10·9就是 1.23e9 或者 0.00012就是1 ...
- C++成员变量的初始化顺序问题
问题来源: 由于面试题中,考官出了一道简单的程序输出结果值的题:如下, class A { private: int n1; int n2; public: A():n2(0),n1(n2+2){} ...
- eclipse下package的命名规范
Java的包名都有小写单词组成,类名首字母大写:包的路径符合所开发的 系统模块的 定义,比如生产对生产,物资对物资,基础类对基础类.以便看了包名就明白是哪个模块,从而直接到对应包里找相应的实现. 由于 ...
- 编写实现连接oracle数据库并返回Connection对象的Java工具类
只需要实现一个功能,所以只写一个方法,为了方便调用,设为静态方法 package com.jv; import java.sql.Connection; import java.sql.DriverM ...
- ScrollView内部元素如何做到fill_parent 或者 match_parent?
转 : http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0704/1629.html ScrollView滚动视图是指当拥有很多 ...