MySQL函数

1.数学函数
主要用来处理数值数据,在有错误产生时,将会返回空值NULL。
(1)绝对值函数:ABS(X)
(2)返回圆周率的函数:PI(X)默认的显示6为小数。
(3)SQRT(X):返回非负数x的二次方根
(4)求余函数MOD(X,Y)
返回X被Y除后的余数,MOD()对于带有小数部分的数值也起作用,他返回除法运算后的精确余数。
(5)获取整数的汗水CEIL(X),CEILING(X),FLOOR(X)
CEIL(X)和CEILING(X)意义相同,返回不小于X的最小整数值,返回值转化为一个BIGINT。
FLOOR(X):返回不大于x的最大整数值。
(6)获取随机数的函数RAND()和RAND(X)
RAND(X)返回一个随机浮点值V,范围在0到1之间,如果已经指定了一个参数x,则它被用作种子值,用来产生重复序列。
(7)四舍五入函数ROUND(X),ROUND(X,Y),TRUNCATE(X,Y)
ROUND(X):返回最接近于参数x的整数,对x值进行四舍五入
ROUND(X,Y):对操作数进行四舍五入操作,结果保留小数点后指定y位
TRUNCATE(X,Y):返回被舍去小数点后Y位的数字X,如果y的值为0,则结果不带有小数点或不带有小数部分,如果y设为负数,则截去x小数点左起第y位开始后面所有低位的数值。
(8)符号函数SIGN(X)
返回参数的符号,x的值为负,零,或正时返回结果依次为-1,0,1
(9)幂运算函数POW(X,Y),POWER(X,Y),EXP(X)
POW(X,Y)或者POWER(X,Y)函数返回x的y次乘方的结果值。
EXP(X,Y)返回e的x乘方后的值。
(10)对数运算函数LOG(X)和LOG10(X)
LOG(X)返回x的自然对数,x相对于基数e的对数。,定义域如果是负数则返回NULL
LOG10(X):返回x的基数为10的对数
(11)角度与弧度相互转化函数RADIANS(X)和DEGREES(X)
RADIANS(X)将参数x由角度转化为弧度。
DEGREES(X)将参数X由弧度转化为角度。
(12)正弦函数SIN(X)
返回x正弦,其中x为弧度值
(13)反正弦函数ASIN(X)
返回x的反正弦,也就是正弦为x的值,如果不在-1到1的范围内,则返回Null
(14)余弦函数COS(X)
返回x的余弦,其中x为弧度值
(15)反余弦ACOS(X)
返回x的反余弦,也就是余弦为x的值,如果不在-1到1的范围内,则返回Null
(16)正切函数TAN(X)
返回x的正切,其中x为给定的弧度值
(17)反正切函数ATAN(X)
返回x的反正切,也就是正切为x的值
(18)余切函数COT(X)
返回x的余切。
2.字符串函数
主要用于处理数据库中的字符串数据
(1)CHAR_LENGTH(str)
返回值为字符串str所包含的字符个数。一个多字节字符算作一个字符
(2)LENGTH(str):返回字符串的长度
(3)合并字符串CONCAT(s1,s2,…)
返回结果为连接参数所产生的字符串,或许有一个或多个参数,如果有一个参数为NULL,则返回值也为NULL。如果所有的参数均非二进制字符串,则结果为非二进制字符串。如果自变量中含有任意二进制字符串,则结果为 一个二进制字符串。
(4)替换字符串的函数CONCAT_WS(X,s1,s2,…)
第一个参数是其余参数的分隔符,分隔符的位置放在要连接的两个字符串之间,分隔符可以是一个字符串,也可以是其他参数,如果分隔符为Null,则结果为NULL。函数会忽略任何分隔符参数后的NULL值
(5)替换字符串的函数INSERT(s1,x,len,s2)
返回字符串s1,其子字符串起始于x位置和被字符串s2所取代的len字符。如果x超过字符串长度,则返回值为原始字符串。假如len长度大于其他的字符串长度,则从位置x开始替换。若任何一个参数为NULL,则返回值为NULL。
(6)字母大小写转化函数
LOWER(str):将字符串str中的所有字母转化为小写字母
UPPER(str):将字符串中的所有字母转化为大写字母
(7)获取指定长度的字符串的函数LEFT(s,n)和RIGHT(s,n)
LEFT(s,n):返回字符串s开始的最左边的n个字符
RIGHT(s,n):返回字符串str的最右边的n个字符。
(8)填充字符串的函数LPAD(s1,len,s2)和RPAD(s1,len,s2)
LPAD(s1,len,s2):返回字符串s1,其左边由字符串s2填补到len字符长度,如果s1的长度大于len,则返回值被缩短至len字符。
RPAD(s1,len,s2):返回字符串s1,其右边由字符串s2填补到len字符长度,如果s1的长度大于len,则返回值被缩短至len字符。
(9)删除空格函数
LTRIM(s):返回字符串s,字符串左边空格字符被删除
RTRIM(s):返回字符串s,字符串右边空格字符被删除
TRIM(s):字符串两侧的空格被删除
(10)删除指定字符串的函数TRIM(s1 from s)
删除字符串s中两端所有的子字符串s1,s1为可选项,在未指定情况下可以删除空格。
(11)重复生成字符串的函数REPEAT(s,n)
返回一个由重复的字符串s组成的字符串,字符串s的数目等于n,若n<=0,则返回一个空字符串,若s或n为NULL,则返回NULL
(12)空格函数SPACE(n):返回一个由n个空格组成的字符串
(13)替换函数REPLACE(s,s1,s2)
使用字符串s2替换字符串s中的所有s1字符串。
(14)比较字符串大小函数STRCMP(s1,s2)
如果所有的字符串相同,返回0;弱国根据当前分类次序,第一个参数小于第二个,则返回-1,其他情况返回1
(15)获取子串的函数
SUBSTRING(s,n.len):带有Len参数的格式,从字符串s返回一个长度同len字符串相同的子字符串,起始于位置n,也可能对n使用一个负值,如果是这样子,则子字符串的位置起始于字符串结尾的n字符。
MID(s,n,len):与SUBSTRING函数效果相同
(16)匹配子串开始位置的函数
LOCATE(str1,str2),,POSITION(str1 IN str),INSERT(str,str1)
返回子字符串str1在字符串str中的开始位置。
(17)字符串逆序的函数REVERSE(s)
将字符串s反转,返回的字符串的顺序和s字符串顺序相反。
(18)返回指定位置的字符串函数
ELT(N,字符串1,字符串2,。。。,字符串N),若N=1,则返回值为字符串1,若N=2,返回值为字符串2,依次类推,若N小于1或者大于参数的数目,则返回值为NULL。
(19)返回指定字符串位置的函数FIELD(s,s1,s2,…)
返回字符串s在列表s1,s2,…中第一次出现的位置,在找不到s的情况下返回值为0,如果s为NULL,则返回值为0,原因是NULL不能同任何值进行同等比较。
(20)返回子串位置的函数FIND_IN_SET(s1,s2)
返回字符串s1在s2中出现的位置,字符串列表是一个由多个逗号”,”分开的字符串组成的列表。如果s1不在s2或s2为空字符串,则返回值为0.如果任意一个参数为NULL,则返回值为NULL。这个函数在第一个参数包含一个“,”时将无法正常运行。
(21)选取字符串函数MAKE_SET(x,s1,s2)
返回由x的二进制数指定的相应位的字符串组成的字符串,s1对应比特1,s2对应比特01依次类推。s1,s2…中的NULL值不会被添加到结果中。
3.日期时间函数
(1)获取当前日期的函数:CURDATE()
(2)获取当前时间的函数:CURRENT_DATE()
将当前日期按照YYYY-MM-DD或者YYYYMMDD格式的值返回。
(3)获取当前日期和时间的函数
CURRENT_TIMESTAMP()、LOCALTIME()、NOW()、SYSDATE()
返回当前日期和时间值,格式为YYYY-MM-DD HH:MM:SS或YYYYMMDDHHMMSS
(4)UNIX时间戳函数
UNIX_TIMESTAMP(date)若无参数调用,则返回一个Unix时间戳作为无符号整数。
(5)返回UTC日期的函数UTC_DATE()
返回当前UTC日期值,其格式为YYYY-MM-DD或YYYYMMDD,返回当前时区的日期值
(6)返回UTC时间函数
UTC_TIME()返回当前UTC时间值,HH:MM:SS或HHMMSS
(7)MONTH(date):返回date对应的月份,范围值1-12
(8)MONTHNAME(date):返回日期date对应的月份全英文名
(9)DAYNAME(date):返回指定日期的工作日名称
(10)DAYOFWEEK(d):返回日期对应的周索引
(11)WEEKDAY():返回日期对应的工作日索引
(12)WEEK(d):计算日期d是一年中的第几周
(13)WEEKOFYEAR(d):计算某天位于一年中的第几周。
(14)DAYOFYEAR(d):返回d是一年中的第几天
(15)DAYOFMONTH(d):返回d是一个月中的第几天
(16)YEAR(date):返回date对应的年份
(17)QUARTER(date):返回date对应的一年中的季度值。
(18)MINUTE():返回指定时间的分钟值
(19)SECOND(time):返回time对应的秒数
(20)EXTRACT(type from date)获取日期的指定值的函数
(21)TIME_TO_SEC(time):返回已转化为秒的time参数,转化公式:小时*3600+分钟*60+秒
(22)SEC_TO_TIME(time):返回被转化为小时,分钟和秒数的seconds参数值。
(23)计算日期和时间的函数
DATE_ADD()、ADDDATE()、DATE_SUB()、SUBDATE()、ADDTIME()、SUBTIME()、DATE_DIFF()
(24)将日期和时间格式化函数:DATE_FORMAT(date,format)
根据format指定的格式显示date值
(25)TIME_FORMAT(date):根据format字符串安排time值的格式
(26)GET_FORMAT(val_type,format_type):返回日期时间字符串的显示格式。
4.条件判断函数
(1)IF(expr,v1,v2)函数
若expr是true,IF()
若V1,V2中只有一个明确是NULL,则IF()函数结果类型为非空表达式的结果类型
(2)IFNULL(V1,V2)
假设V1不为NULL,则IFNULL返回v1,否则返回v2,IF()返回值为数字值或字符值
(3)CASE函数
CASE expr WHEN v1 THEN r1 [ WHEN v2 THEN r2] [ELSE rn] END
这个函数表示,如果expr值等于某个VN,则返回对应位置THEN后面的结果,如果与所有制都不相等,则返回ELSE后面的rn
5.系统函数
(1)查询当前MYSQL版本号
select version();
(2)查看当前用户连接数
select connection_id();

你可能感兴趣的:(mysql,函数)