04-MySQL函数

04-MySQL内置函数


数学函数

函数名作用
ABS(x)取绝对值
pi()圆周率
SQRT(x)平方根函数
MOD(x,y)取余函数
CEIL(x)取整函数,返回不小于x的最小整数值(舍弃小数+1),返回BIGINT
CEILING(x)取整函数,返回不小于x的最小整数值(舍弃小数+1),返回BIGINT
FLOOR(x)返回不大于x的最大整数值(舍弃小数),返回BIGINT
RAND(x)返回随机数,范围在0-1至今,x作为种子值
ROUND(x,y)返回最接近于参数x的整数,对x值进行四舍五入
SIGN(x)返回参数的符号,根据x的值返回,负(-1),零(0),正(1)
POW(x,y)返回x的y次方的的结果值
POWER(x,y)返回x的y次乘方的结果值
EXP(x)返回e的x乘方后的值
LOG(x)返回x的自然对数
LOG10(x)返回以10为基数的对数
RANDIANS(x)将参数x由角度转化为弧度
DEGREES(x)将参数x由弧度转化为角度
SIN(x)正弦函数
ASIN(x)反正弦函数
COS(x)余弦函数
ACOS(x)反余弦函数
TAN(x)正切函数
ATAN(x)反正切函数
COT(x)余切函数

字符串函数

函数名作用
CHAR_LENGTH(str)返回字符串str所包含的字符个数,一个多字节字符串算作一个单字符。
LENGTH(str)返回字符串的字节长度,使用utf-8编码字符集时,一个汉字是3个字节,一个数字或字母算一个字节
CONCAT(s1,s2…)返回s1和s2的拼接结果,如果其中某个参数为null,其返回结果是null
CONCAT_WS(x,s1,s2)CONCAT with separator,第一个参数是其他参数的分隔符,如果分隔符为null,那么返回null
INSERT(s1,x,len,s2)返回s1,其子字符串起始于x位置和被字符串s2取代的len字符,如果x超过了字符串长度,则返回值为原始字符串,加入len的长度大于其他字符串的长度,则从x位置开始替换,任意参数为NULL时,返回NULL
LOWER(str)/LCASE(str)转化为小写
UPPER(str)/UCASE(str)转化为大写
LEFT(s,n)返回字符串s开始的最左边n个字符
RIGHT(s,n)返回字符串s结尾的最右边n个字符
LPAD(s1,len,s2)返回,s1,左边由字符串s2填充到len字符串长度
RPAD(s1,len,s2)返回s2,其邮编被字符串s2填充至len字符长度
LTRIM(s)删除空格,字符串左侧空格字符被删除
RTRIM(s)删除空格,字符串右侧空格字符被删除
TRIM(s)删除字符串两侧的字符TRIM
TRIM(s1 FROM s)删除字符串s中两端所有的子字符串s1
REPEAT(s,n)返回一个由重复的字符串s组成的字符串,字符串的数为n,若n<=0 返回一个空字符串,若s或n为NULL,则返回NULL
SPACE(n)返回一个由n个空格组成的字符串
REPLACE(s,s1,s2)使用字符串s2替代字符串s中的所有字符串s1
STRCMP(s1,s2)若s1和s2的所有字符串都相同,则返回0;若根据当前分类次序,第一个参数小于第二个,返回-1,其他情况返回1
SUBSTRING(s,n,len)从字符串s返回一个长度同len字符串相同的子字符串,起始于位置n。
MID(s,n,len)获取指定位置处的子字符串
LOCATE(str1,str)返回子字符串str1在字符串str中的开始位置
POSITION(str1 IN str)返回子字符串str1在字符串str中的开始位置
INSTR(str,str1)返回子字符串str1在字符串str中的开始位置
REVERSE(s)将字符串s反转,返回的字符串的顺序和s字符串顺序相反
ELT(N,str1,str2,….)若N=1 ,则返回值为str1,若n=2,返回为str2,由此类推。n位置上不存在,返回null
FIELD(s,s1,s2……)返回字符串s在列表s1,s2…中第一次出现的位置,找不到就返回0,若s为null ,返回0
FIND_IN_SET(s1,s2)返回字符串s1在字符串列表s2中出现的位置,字符串列表是一个由多个”,”分开的字符串组成的列表,如果s1不在s2或s2为空字符串,返回0,如果任意一个参数为NULL,则返回值为NULL
MAKE_SET(x,s1,s2,…)返回由x的二进制数指定的相应位的字符串组成的字符串,s1对应比特1,s2对应比特02

日期和时间函数

函数名作用
CURDATE()/CURRENT_DATE()返回当前日期”YYYY-MM-DD”
CURDATE()+0返回当前日期”YYYYMMDD”
CURRENT_TIMESTAMP()获取当前系统日期和时间
LOCAKTIME()获取当前系统日期和时间
NOW()获取当前系统日期和时间
SYSDATE()获取当前系统日期和时间
UNIX_TIMESTAMP(date)把普通格式的时间转换为unix时间戳
FROM_UNIXTIME(date)把unix时间戳转换为普通格式的时间
UTC_DATE()返回UTC(世界标准时间)日期值
MONTH(date)返回date对应的月份
MINTHNAME(date)返回date对应的月份名称
DAYNAME(d)返回日期的英文名称,sunday
DAYOFWEEK(d)返回索引,1为周日
WEEKDAY(d)返回工作日索引,0为周一
WEEK(d,mode)计算日期d是一年中的第几周

Mode一周的第一天范围Week1为第一周
0周日0~53本年度中有一个有一个周日周日
1周一0~53本年度中有3天以上
2周日1~53本年度中有一个周日
3周一1~53本年度中有3天以上
4周日0~53本年度中有3天以上
5周一0~53本年度中一个周一
6周日1~53本年度中有3天以上
7周一1~53本年度中有一个周一

条件判断函数

函数名作用
IF(expr,v1,v2)expr =true (expr<>0 and expr<>NULL),返回v1,否则返回v2
IFNULL(v1,v2)假如v1不为null,则IFNULL()的返回值为v1,否则其返回值为v2
CASE expr WHEN v1 THEN r1 (WHEN v2 THEN r2)(ELSE rn) END如果expr值等于某个vn,则返回 对应位置than后面的结果,如果都不相等,返回else后面的rn

系统信息函数

函数名作用
SELECT VERSION();查看MySQL版本号
SELECTCONNECTION_ID();查看当前用户的连接数
SHOW PROCESSLIST输出当前用户的链接信息
SELECT DATABASE(),SCHEMA();返回使用utf8字符集的默认数据库名
SELECT USER()获取当前登录用户名称
CHARSET(str)返回字符串str自变量的字符集
LAST_INSERT_ID()自动返回最后一个INSERT或UPDATE为AUTO_INCREMENT列设置的第一个发生的值

加/解密函数PASSWORD(str)

函数名作用
SELECT PASSWORD(‘newpwd’)加密
SELECT MD5(‘mypwd’)md5加密
ENCODE(str,pswd_str)使用pswd_str作为密码,加密str
DECODE(crypt_str,pswd_str)使用pswd_str作为密码,解码str
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值