MySQL常用函数汇总

1、数学函数
ABS(x)     
返回 x 的绝对值

BIN(x)     
返回 x 的二进制(OCT 返回八进制,HEX 返回十六进制)

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

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

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

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

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

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

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

MOD(x,y)    
返回 x/y 的模(余数)

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

RAND()    
返回0到1内的随机值,可以通过提供一个参数(种子)使 RAND()随机数生成器生成一个指定的值。

ROUND(x,y)    
返回参数 x 的四舍五入的有 y 位小数的值

SIGN(x)    
返回代表数字 x 的符号的值

SQRT(x)    
返回一个数的平方根

TRUNCATE(x,y)     
返回数字 x 截短为 y 位小数的结果

2、聚合函数
AVG(col_name)      返回指定列的平均值
COUNT(col_name)    返回指定列中非 NULL 值的个数
MIN(col_name)     返回指定列的最小值
MAX(col_name)    返回指定列的最大值
SUM(col_name)    返回指定列的所有值之和

3、字符串函数
ASCII(char)      
返回字符的 ASCII 码值

BIT_LENGTH(str)     
返回字符串的比特长度

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 中的位置

LCASE(str)或 LOWER(str)    
返回将字符串 str 中所有字符改变为小写后的结果

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

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

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

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

QUOTE(str)    
用反斜杠转义 str 中的单引号

REPEAT(str,srchstr,rplcstr)    
返回字符串 str 重复 x 次的结果

REVERSE(str)    
返回颠倒字符串 str 的结果

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

RTRIM(str)    
返回字符串 str 尾部的空格

STRCMP(s1,s2)    
比较字符串 s1 和 s2

TRIM(str)    
去除字符串首部和尾部的所有空格

UCASE(str)或 UPPER(str)    
返回将字符串 str 中所有字符转变为大写后的结果

4、日期和时间函数
NOW()     返回当前的日期和时间
CURDATE()或 CURRENT_DATE()    返回当前的日期
CURTIME()或 CURRENT_TIME()    返回当前的时间
DATE_ADD(date,INTERVAL int keyword)    返回日期 date 加上间隔时间 int 的结果(int 必须按照关键字进行格式化)
DATE_FORMAT(date,fmt)    依照指定的 fmt 格式格式化日期 date 值
FROM_UNIXTIME(ts,fmt)    根据指定的 fmt 格式,格式化 UNIX 时间戳 ts
DAYOFWEEK(date)    返回 date 所代表的一星期中的第几天(1~7)
DAYOFMONTH(date)    返回 date 是一个月的第几天(1~31)
DAYOFYEAR(date)    返回 date 是一年的第几天(1~366)
QUARTER(date)    返回 date 在一年中的季度(1~4)
DAYNAME(date)    返回 date 的星期名
MONTHNAME(date)    返回 date 的月份名
YEAR(date)    返回日期 date 的年份(1000~9999)
MONTH(date)     返回 date 的月份值(1~12)
HOUR(time)    返回 time 的小时值(0~23)
WEEK(date)     返回日期 date 为一年中第几周(0~53)
MINUTE(time)     返回 time 的分钟值(0~59)

5、格式化字符串
%M     月名字(January……December)
%W    星期名字(Sunday……Saturday)
%D     有英语前缀的月份的日期(1st, 2nd, 3rd …)
%Y     年, 数字, 4 位
%y     年, 数字, 2 位
%a    缩写的星期名字(Sun……Sat)
%d    月份中的天数, 数字(00……31)
%m     月, 数字(01……12)
%e     月份中的天数, 数字(0……31)
%c     月, 数字(1……12)
%b     缩写的月份名字(Jan……Dec)
%j     一年中的天数(001……366)
%H     小时(00……23)
%k     小时(0……23)
%h     小时(01……12)
%I     小时(01……12)
%l     小时(1……12)
%i     分钟, 数字(00……59)
%r     时间,12 小时(hh:mm:ss [AP]M)
%T    时间,24 小时(hh:mm:ss)
%S     秒(00……59)
%s     秒(00……59)
%p    AM 或 PM
%w    一个星期中的天数(0=Sunday ……6=Saturday )
%U     星期(0……52), 这里星期天是星期的第一天
%u     星期(0……52), 这里星期一是星期的第一天
%%     一个文字“%”。

6、加密函数
AES_ENCRYPT(str,key)     
返回用密钥 key 对字符串 str 利用高级加密标准算法加密后的结果,调用 AES_ENCRYPT 的结果是一个二进制字符串,以 BLOB 类型存储

AES_DECRYPT(str,key)    
返回用密钥 key 对字符串 str 利用高级加密标准算法解密后的结果

DECODE(str,key)     
使用 key 作为密钥解密加密字符串 str

ENCRYPT(str,salt)     
使用 UNIXcrypt()函数,用关键词 salt(一个可以唯一确定口令的字符串,就像钥匙一样)加密字符串 str

ENCODE(str,key)     
使用 key 作为密钥加密字符串 str,调用 ENCODE()的结果是一个二进制字符串,它以 BLOB 类型存储

MD5()     
计算字符串 str 的 MD5 校验和

PASSWORD(str)     
返回字符串 str 的加密版本,这个加密过程是不可逆转的,和 UNIX 密码加密过程使用不同的算法。

SHA()     
计算字符串 str 的安全散列算法(SHA)校验和

发布了4 篇原创文章 · 获赞 2 · 访问量 371
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览