MySQL常用函数汇总

MySQL 数值型函数

函数名称		作 用
ABS		    求绝对值
SQRT		求二次方根
MOD		    求余数
CEI		    L 和 CEILING 两个函数功能相同,都是返回不小于参数的最小整数,即向上取整
FLOOR		向下取整,返回值转化为一个BIGINT
RAND		生成一个0~1之间的随机数,传入整数参数是,用来产生重复序列
ROUND		对所传参数进行四舍五入
SIGN		返回参数的符号
POW		    和 POWER 两个函数的功能相同,都是所传参数的次方的结果值
SIN		    求正弦值
ASIN	   	求反正弦值,与函数 SIN 互为反函数
COS		    求余弦值
ACOS		求反余弦值,与函数 COS 互为反函数
TAN		    求正切值
ATAN		求反正切值,与函数 TAN 互为反函数
COT		    求余切值

MySQL 字符串函数

函数名称		            作 用
LENGTH		    计算字符串长度函数,返回字符串的字节长度
CONCAT		    合并字符串函数,返回结果为连接参数产生的字符串,参数可以使一个或多个
INSERT		    替换字符串函数
LOWER		    将字符串中的字母转换为小写
UPPER		    将字符串中的字母转换为大写
LEFT		    从左侧字截取符串,返回字符串左边的若干个字符
RIGHT		    从右侧字截取符串,返回字符串右边的若干个字符
TRIM		    删除字符串左右两侧的空格
REPLACE		    字符串替换函数,返回替换后的新字符串
SUBSTRING	   	截取字符串,返回从指定位置开始的指定长度的字符换
REVERSE		    字符串反转(逆序)函数,返回与原始字符串顺序相反的字符串

MySQL 日期和时间函数

函数名称			                作 用
CURDATE		        和 CURRENT_DATE 两个函数作用相同,返回当前系统的日期值
CURTIME		        和 CURRENT_TIME 两个函数作用相同,返回当前系统的时间值
NOW		            和 SYSDATE 两个函数作用相同,返回当前系统的日期和时间值
UNIX_TIMESTAMP	    获取UNIX时间戳函数,返回一个以 UNIX 时间戳为基础的无符号整数
FROM_UNIXTIME	    将 UNIX 时间戳转换为时间格式,与UNIX_TIMESTAMP互为反函数
MONTH		        获取指定日期中的月份
MONTHNAME	    	获取指定日期中的月份英文名称
DAYNAME		        获取指定曰期对应的星期几的英文名称
DAYOFWEEK		    获取指定日期对应的一周的索引位置值
WEEK		        获取指定日期是一年中的第几周,返回值的范围是否为 0〜52 或 1〜53
DAYOFYEAR		    获取指定曰期是一年中的第几天,返回值范围是1~366
DAYOFMONTH		    获取指定日期是一个月中是第几天,返回值范围是1~31
YEAR		        获取年份,返回值范围是 1970〜2069
TIME_TO_SEC	        将时间参数转换为秒数
SEC_TO_TIME        	将秒数转换为时间,与TIME_TO_SEC 互为反函数
DATE_ADD		    和 ADDDATE 两个函数功能相同,都是向日期添加指定的时间间隔
DATE_SUB		    和 SUBDATE 两个函数功能相同,都是向日期减去指定的时间间隔
ADDTIME		        时间加法运算,在原始时间上添加指定的时间
SUBTIME		        时间减法运算,在原始时间上减去指定的时间
DATEDIFF	   	    获取两个日期之间间隔,返回参数 1 减去参数 2 的值
DATE_FORMAT	        格式化指定的日期,根据参数返回指定格式的值
WEEKDAY		        获取指定日期在一周内的对应的工作日索引

MySQL 聚合函数

函数名称		          作 用
MAX		        查询指定列的最大值
MIN		        查询指定列的最小值
COUNT	    	统计查询结果的行数
SUM		        求和,返回指定列的总和
AVG		        求平均值,返回指定列数据的平均值

MySQL 流程控制函数、四大排名函数

函数名		            作 用
IF		           判断,流程控制
条件判断,IF(condition,arg1, arg2)如果condition为真,arg1,否则arg2
update 表名 set 字段名=if('','','');

IFNULL	           判断是否为空

CASE	           搜索语句
case when	格式:
Update/select 表名 SET 字段名=case 字段名 when '' then ''... else'' end;

ROW_NUMBER        对相等的值不进行区分,其实就是行号,相等的值对应的排名不同,序号从1到n连续。

RANK	          相等的值排名相同,但若有相等的值,则序号从1到n不连续
                        如果有两个人都排在第3名,则没有第4名。
不同点:ROW_NUMBER()会依次进行排序,而Rank()则不一样出现相同的,排名是一样的。

DENSE_RANK()      排名中没有任何间断,存在并列如并列第一第二,RANK()是跳跃的排名

NTILE()	           把有序的数据集合平均分配到指定的数量n的桶中,将桶号分配给每一行,
                    排序对应的数字为桶号,序号从1到n连续

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值