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 ...
随机推荐
- Android系统启动分析(Init->Zygote->SystemServer->Home activity)
整个Android系统的启动分为Linux Kernel的启动和Android系统的启动.Linux Kernel启动起来后,然后运行第一个用户程序,在Android中就是init程序. ------ ...
- [BZOJ3156]防御准备(斜率优化DP)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=3156 分析: 简单的斜率优化DP
- javascript 连等赋值问题(这是从SegmentFault转过来的一个问题)
var a = {n:1}; var b = a; // 持有a,以回查 a.x = a = {n:2}; alert(a.x);// --> undefined alert(b.x);// - ...
- C++ redirect input
#include<iostream> #include<string> #include<fstream> using namespace std; int mai ...
- 简单解释CDATA
在网页源代码中,经常会看见如下代码: <![CDATA[其他内容]]>,其中其他内容一般是脚本. 为什么要用这个标签? 这个标签的意思是Character-Data,即字符数据. 目的,告 ...
- javascript生成GUID的代码
<script type="text/javascript"> var Guid = function(){}; Guid.prototype = { S4:funct ...
- LINUX下PHP开启短标签short_open_tag支持
LINUX下PHP开启短标签short_open_tag支持 以CENTOS为例: 找到php.ini #find / -name php.ini #/etc/php.ini 编辑php.ini #v ...
- FastFDFS_Jave客户端调用(亲测可用)
一.配置文件(fdfs_client.properties) 1 2 3 4 5 6 7 8 9 10 connect_timeout = 30 network_timeout = 60 charse ...
- java 中hashmap和hashtable的区别
1.hashmap是线程不安全的,能够有key,value能有null hashtable是线程安全的,key,value不能有null
- Entity Framework在WCF中序列化的问题
问题描述 如果你在WCF中用Entity Framework来获取数据并返回实体对象,那么对下面的错误一定不陌生. 接收对 http://localhost:5115/ReService.svc 的 ...