【无标题】内置函数

本文详细介绍了MySQL的各种内置函数,包括数学函数(如ABS、CEIL)、字符串函数(如LENGTH、CONCAT)、日期和时间函数(如CURDATE、DATEDIFF)、系统信息函数(如USER、DATABASE)以及条件判断和类型转换函数。这些函数在数据库操作中起到关键作用,帮助用户进行数据处理和计算。
摘要由CSDN通过智能技术生成

附件:MySQL的内置函数

1、数学函数
abs(x):绝对值
ceil(x)或者ceiling(x):向上取整
Floor(x):向下取整
pow(x,y):求指数,x的y次方
rand(),rand(N):返回0-1间的浮点数,使用不同的seed N可以获得不同的随机数
round(x, D):四舍五入保留D位小数,D默认为0, 可以为负数, 如round(19, -1)返回20
2 字符串函数
char_length(str):返回str所包含的字符数,一个多字节字符算一个字符
length(str): 返回字符串的字节长度,如utf8中,一个汉字3字节,数字和字母算一个字节
concat(s1, s1, ...): 返回连接参数产生的字符串
lower(str)或者lcase(str):全部小写
upper(str)或者ucase(str):全部大写
left(s,n):返回字符串s最左边n个字符
right(s,n): 返回字符串最右边n个字符
ltrim(s):删除s左侧空格字符
SUBSTRING(str,pos), SUBSTRING(str FROM pos), SUBSTRING(str,pos,len), SUBSTRING(str FROM pos FOR len),MID(str,pos,len): 获取特定位置,特定长度的子字符串
INSTR(str,substr): 判断子字符串在目标字符串中是否存在,存在返回其位置,不存在,返回0。

3 日期和时间函数
CURDATE(), CURRENT_DATE, CURRENT_DATE():用于获取当前日期,格式为'YYYY-MM-DD'; 若+0则返回YYYYMMDD
CURTIME([fsp]), CURRENT_TIME, CURRENT_TIME([fsp]): 用于获取当前时间, 格式为'HH:MM:SS' 若+0则返回 HHMMSS
DATEDIFF(expr1,expr2):返回相差的天数,参数是必须使用字符串格式(用引号)。
TIMEDIFF(expr1,expr2):返回相隔的时间
ADDDATE(date,INTERVAL expr unit):进行时间的增加。
Unit:day/hour/minutecond
MONTH(date)
MONTHNAME(date)
DAYNAME(date)
DAY(date),DAYOFMONTH(date):1-31或者0
DAYOFWEEK(date):1-7==>星期天-星期六
DAYOFYEAR(date): 1-365
4 系统信息函数
VERSION():返回mysql服务器的版本,是utf8编码的字符串
DATABASE(),SCHEMA():显示当前使用的数据库
SESSION_USER(), SYSTEM_USER(), USER(), CURRENT_USER, CURRENT_USER():返回当前的用户名@主机,utf8编码字符串
CHARSET(str)
COLLATION(str)
LAST_INSERT_ID():自动返回最后一个insert或者update查询, 为auto_increment列设置的第一个发生的值
5 其他函数
MD5(str):对数据进行MD5加密。
UUID:生成一个唯一标识符(自增长),是整数,数据唯一,空间唯一
6条件判断函数
IF(expr1,expr2,expr3):如果expr1不为0或者NULL,则返回expr2的值,否则返回expr3的值
IFNULL(expr1,expr2):如果expr1不为NULL,返回expr1,否则返回expr2
NULLIF(expr1,expr2): 如果expr1=expr2则返回NULL, 否则返回expr2
CASE value WHEN [compare_value] THEN result [WHEN [compare_value] THEN result ...] [ELSE result] END
当compare_value=value时返回result
CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END
当condition为TRUE时返回result
    SELECT CASE 1 WHEN 1 THEN 'one'
        WHEN 2 THEN 'two' ELSE 'more' END;##'one'
    SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END;##'true'
    SELECT CASE BINARY 'B'
        WHEN 'a' THEN 1 WHEN 'b' THEN 2 END;##NULL
7 格式或类型转化函数
FORMAT(X,D[,locale]):将数字X转化成'#,###,###.##'格式,D为保留的小数位数
CONV(N,from_base,to_base):改变数字N的进制,返回值为该进制下的数字构成的字符串
INET_ATON(expr):ip字符串转数字
INET_NTOA(expr):数字转ip字符串
CAST(expr AS type):转换数据类型
CONVERT(expr,type), CONVERT(expr USING transcoding_name): type可以为BINARY[(N)],CHAR[(N)],DATE,DATETIME, DECIMAL[(M[,D])],DECIMAL[(M[,D])],TIME,UNSIGNED [INTEGER]等等。transcoding_name如utf8等等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值