最近项目很忙,分给我的功能都比较复杂,还好能应付的下来。在工作的过程中,我发现使用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好用的数学函数的更多相关文章

  1. MYSQL的基本函数 (数学函数)

    ABS(x)   返回x的绝对值 BIN(x)   返回x的二进制(OCT返回八进制,HEX返回十六进制) CEILING(x)   返回大于x的最小整数值 EXP(x)   返回值e(自然对数的底) ...

  2. MySQL 数学函数

    MySQL 数学函数 所有的数学函数在发生错误的情况下,均返回 NULL. -元减.改变参数的符号 mysql> SELECT - 2; -> -2 注意,如果这个操作符被用于一个 BIG ...

  3. MySql常用函数数学函数、加密函数等(转—收藏)

        MySql函数众多,这里只是列举了一部分常用的函数.   一.数学函数 ABS(x)                                         // 返回x的绝对值 BI ...

  4. MySQL 进阶4 SQL常见函数: 字符函数/数学函数/日期函数/流程控制函数(if/case)

    # 进阶4 SQL常见函数 分类: 1/单行函数: 字符函数: concat(),length(),ifnull(__,default) ,instr(), trim(),upper(),lower( ...

  5. mysql 函数 时间函数,数学函数,字符串函数,条件判断函数

    =========================================== mysql 相关函数 ============================================= ...

  6. MySql cmd下的学习笔记 —— 有关常用函数的介绍(数学函数,聚合函数等等)

    (一)数学函数 abs(x)              返回x的绝对值 bin(x)               返回x的二进制(oct返回八进制,hex返回十六进制) ceiling(x)      ...

  7. 转MYSQL学习(三) 函数

    这一节主要介绍MYSQL里的函数,MYSQL里的函数很多,我这里主要介绍MYSQL里有而SQLSERVER没有的函数 数学函数 1.求余函数MOD(X,Y) MOD(X,Y)返回x被y除后的余数,MO ...

  8. MySQL数据库—日期与时间函数

    一. 日期和时间函数 函数的概念:按指定格式输入参数,返回正确结果的运算单元 1. 返回当前日期:curdate() current_date() current_date()+0可以将当前日期转换为 ...

  9. mysql中的内置函数

    这里主要介绍mysql丰富的内置函数. 数学函数 数学函数相对比较简单,就是涉及一些数值的计算,这里列出数学函数的功能,仅个别给出实例. 函数 作 用 ABX(x) 返回x的绝对值 CEIL(X),C ...

随机推荐

  1. Javascript的精华啊【如果以后我看到了或者想到了再继续补吧】

    我不过略有一些讨人喜欢的地方而已,怎么会有什么迷人的魔力呢? 一.语法 JS只有一个数字类型,64位浮点数,所以1和1.0是相同的.为什么这么设计:防止短整型的溢出. 二.对象 1.通常将一个对象的值 ...

  2. iostat命令详解

    iostat iostat用于输出CPU和磁盘I/O相关的统计信息. 命令格式: iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ devic ...

  3. 基于tiny4412原生uboot修改制作SD启动并烧写到emmc

    最近入手tiny4412的标准板,底板SDK型号为1506.但是因为友善之臂提供的superboot不能进入boot菜单,此时我就不能通过tftp下载内核和通过nfs挂载根文件系统,于是想自己做个ub ...

  4. this Activity.this Activity.class

    1. this 与 Activity.this this是你当前对象的引用,在你的例子中你肯定在内部类ClickEvent里面实现intent,他指向的是ClickEvent,而不是你要传入的Acti ...

  5. Java的反射机制(Reflection)

    反射机制 指可以在运动时加载.探知.使用编译期间完全未知的类 程序在运行状态中,可以动态加载一个只有名称的类,对于任意一个已加载的类,都能够获取这个类的属性和方法:对于任意一个对象可以调用它的任意一个 ...

  6. struts2 spring3.2 hibernate4.1 框架搭建 整合

    ssh是企业开发中常遇到的框架组合,现将框架的搭建过程记录下来,以便以后查看.我的搭建过程是,首先struts,然后spring,最后hibernate.struts2的最新版本为2.3.8,我下载的 ...

  7. zabbix 微信报警

    http://blog.csdn.net/wh211212/article/details/52735236 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越 ...

  8. cygwin-使用介绍

    cygwin使用: 使用上的方便性很是不错,启动Cygwin以后,会在Windows下得到一个Bash Shell,由于Cygwin是以Windows下的服务运行的,所以很多情况下和在Linux下有很 ...

  9. 给<tr>标签添加边框

    今天做网站时发现给<tr>添加border无效.起初还以为tr不支持这个属性,百度,原来只要给<table>添加一句代码就可以了,代码如下: table{border-coll ...

  10. 60.Android通用流行框架大全

    转载:https://segmentfault.com/a/1190000005073746 Android通用流行框架大全 1. 缓存 名称 描述 DiskLruCache Java实现基于LRU的 ...