常用的MySQL函数

这些函数可以减少后台逻辑层代码量,把一些基本操作从逻辑层中剔除,比如对字符串的操作,花式的算法,获取时间,最重要的是逻辑层代码看着干净,强迫症福利

1. 数学函数


abs(x)
返回x的绝对值

ceiling(x)
返回大于x的最小整数值

floor(x)
返回小于x的最大整数值

greatest(x1,x2,...,xn)
返回集合中最大的值

least(x1,x2,...,xn)
返回集合中最小的值

exp(x)
返回值e(自然对数的底)的x次方

ln(x) 
返回x的自然对数

log(x,y)            
返回x的以y为底的对数

mod(x,y)         
返回x/y的余数

PI()  
返回π的值(圆周率)

pow(X,Y) 
返回值X的Y次幂

sqrt(N)  
返回非负数N的平方根

cos(N)  
返回N的余弦值

sin(N)  
返回N的正弦值

tan(N)  
返回N的正切值

acos(N)  
返回N反余弦值(N是余弦值,在-1到1的范围,否则返回NULL)
 
asin(N) 
返回N反正弦值(N是正弦值,在-1到1的范围,否则返回NULL)

atan(N) 
返回N的反正切值

rand()   
返回在范围0到1.0内的随机浮点值(可以使用数字N作为初始值)

degrees(N)
把N从弧度变换为角度并返回

radians(N) 
把N从角度变换为弧度并返回

truncate(N,D)  
保留数字N的D位小数并返回

2. 聚合函数


AVG(col)
返回指定列的平均值

COUNT(col)
返回指定列中非NULL值的个数

MIN(col)
返回指定列的最小值

MAX(col)
返回指定列的最大值

SUM(col)
返回指定列的所有值之和

GROUP_CONCAT(col)
返回由属于一组的列值连接组合而成的结果

3. 字符串函数

ASCII(char)
返回字符的ASCII码值

CONCAT(s1,s2...,sn)
将s1,s2...,sn连接成字符串

CONCAT_WS(sep,s1,s2...,sn)

将s1,s2...,sn连接成字符串,并用sep字符间隔

INSERT(str,x,y,instr)
将字符串str从第x位置开始,y个字符长的子串替换为字符串instr,返回结果

FIND_IN_SET(str,list)
逗号分隔的list列表,如果发现str,返回str在list中的位置

LEFT(str,x)
返回字符串str中最左边的x个字符

RIGHT(str,x)
返回字符串str中最右边的x个字符

LENGTH(str)
返回字符串str中的字符数

LTRIM(str)
从字符串str中切掉开头的空格

POSITION(substr,str)
返回子串substr在字符串str中第一次出现的位置

4. 时间日期函数

CURDATE()
返回当前的日期

CURTIME()
返回当前的时间

DAYOFWEEK(date)  
返回date所代表的一星期中的第几天(1~7)

DAYOFMONTH(date) 
返回date是一个月的第几天(1~31)

DAYOFYEAR(date)  
返回date是一年的第几天(1~366)

NOW()   
返回当前的日期和时间

HOUR(time)  
返回time的小时值(0~23)

MINUTE(time)  
返回time的分钟值(0~59)

MONTH(date)  
返回date的月份值(1~12)

QUARTER(date) 
返回date在一年中的季度(1~4)

WEEK(date)  
返回日期date为一年中第几周(0~53)

YEAR(date)  
返回日期date的年份(1000~9999)

你可能感兴趣的:(常用的MySQL函数)