MySQL流浪记(五)—— MySQL中常见函数的使用(笔记)

MySQL函数是MySQL数据库提供的内部函数。这些内部函数可以帮助用户更加方便的处理表中的数据。本文将简单的介绍MySQL中一些常见的函数,方便之后查阅。

总结了SQL语句中常见的五种函数,分别是:

字符函数:对字符串、二进制数据或表达式执行操作。

数学函数:对表中的数据进行算数运算。

日期函数:处理表中的日期和时间。

聚合函数:返回数据的总汇值。

流程控制函数:实现SQL的条件逻辑

字符函数

函数名函数作用
ASCII(char)返回字符的ASCII码
BIT_LENGTH(str)返回字符串的比特长度
CONCAT(s1,s2)拼接字符串
CONCAT_WS(sep,s1,s2…,sn)将s1,s2…sn连接成字符串,使用sep进行间隔
FORMAT(x,n)将数字x进行格式化“x,xxx.xx”保留n位小
INSERT(str1,x,y,str2)将字符串str1从x位置开始,将y个字符长的字符串替换为str2
INSTR(str1,str2)返回子串str2第一次在str1中出现的索引,如果找不到返回0
LEFT(str,x)返回字符串str中最左边的x个字符
LENGTH(str)获取参数值的字节个数
LOCATE(str1,str2)在str2中查找str1第一次出现的索引
LOWER(str)/LCASE(s)将其转换为小写
LPAD(str1,num,str2)用指定的字符str2实现左填充指定长度,如果num小于str1的 字符长度,则从右边截断至num字符长度
LTRIM(str)删除str前面的空格
POSITION(str1 IN str2)在str2中查找str1第一次出现的索引
REPEAT(str,n)将字符串str重复n次,如果n<=0,返回一个空字符串。如果str或者n是NULL,返回NULL
REPLACE(str1,str2,str3)将str1中的str2全部替换为str3
REVERSE(str)颠倒字符串
RIGHT(str,x)返回字符串str中最右边的x个字符
RPAD(str1,num,str2)用指定的字符str2实现右填充指定长度,如果num小于str1的字符长度,则从左边截断至num字符长度
STRCMP(s1,s2)比较字符串s1和s2,大于1,等于0,小于-1
SUBSTR(str,num1,num2)截取从指定索引num1处num2字符长度的字符
TRIM(str)/LTRIM(str)/RTRIM(str)删除str两边/左/右的空格,(str1,str2)删除所有的str1
UPPER(str)/UCASE(str)将其转换为大写

回目录

数学函数

函数名函数作用
ABS(x)返回绝对值
BIN(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-x/y*y)
ROUND(x)四舍五入
SQRT(x)返回一个输的方平根
TRUNCATE(x,y)返回数字x截短为y位小数的结果
POWER(x,y)返回x的y次幂
SIGN(x)返回x的符号,负数-1,

回目录

日期函数

函数名函数作用
ADDDATE(date,n) /SUBDATE(date,n)从date开始加n天的日期
ADDTIME(t,n)时间t加上n秒的时间
CURTIME()获取当前的时间
DATE_FORMAT(date,fmt)按照指定的fmt格式进行格式化日期
DATEDIFF(d1,d2)计算指定日期d1与d2之间相隔的天数
DAYNAME(date)返回date的星期名
DAYOFMONTH(date)返回date是一月中的第几天
DAYOFWEEK(date)返回date是一周中的第几天
DAYOFYEAR(date)返回date是一年中的第几天
FROM_UNIXTIME(时间戳)时间戳转日期
GETDATE()/CURDATE()获取当前系统的日期
HOUR(date)返回time的小时值
LAST_DAY(date)返回指定月份的最后一天
MINUTE(date)返回time的分钟值
MONTH(date)返回date中的月份值
MONTHNAME(date)返回date的月份名
NOW()返回当前的日期和时间
QUARTER(date)返回date在一年中的季度(1~4)
UNIX_TIMESTAMP(date)得到时间戳
WEEK(date)返回date为一年中的第几周(0~53)
YEAR(date)返回date的年份(1000~9999)

回目录

聚合函数

函数名函数作用
AVG(col)返回指定列的平均值
COUNT(*)返回表中的所有行数
COUNT(col)返回指定列中非NULL值的个数
GROUP_CONCAT(col)返回由属于一组的列值链接组合而成的结果(详解)
MAX(col)返回指定列的最大值
MIN(col)返回指定列的最小值
SUM(col)返回指定列的所有值之和

回目录

流程控制函数

函数名函数作用
CASE WHEN[test1] THEN [result1]…ELSE[default]如果testN为真,则返回resultN,否则返回default
CASE [test] WHEN[val1] THEN[result]…ELSE[default]END如果test和valN相等,则返回resultN,否则返回default
IF(test,t,f)如果test是真,返回t,否则返回f
IFNULL(arg1,arg2)如果arg1不是空,返回agr1,否则返回arg2
NULLIF(arg1,arg2)如果arg1=arg2,返回NULL,否则返回arg1

回目录

上面的一些总结只是目前了解到的,作为一个学习笔记,还有很多没有总结,会持续更新。欢迎各位批评指正!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值