MYSQL的函数
关于MySQL有许多的函数,今天我们来详细介绍一下关于MySQL的聚合函数,数学函数,字符串函数,日期函数。
聚合函数
概述
在MysaL中,聚合函数主要由:count,sum,min,maw,aVg,这些聚合函数我们之前都学过,不再重复,这里我们学习另外一个函数:8rOup_concat明,该函数用户实现行的合井
8group_concat0函数首先根据group b指定的列进行分组,并且用分隔符分隔,将同一个分组中的值连接起来,返回一个字符串结果格式
Troup concaiai国tinct]字段名【order by排序字段asc/desc]【arator"分隔符
说明:
(1)使用distinct可以排除重复值:
(2)如果需要对结果中的值进行排序,可以使用order by子句;(3)separator是一个字符串值,默认为逗号。
数学函数:
ABS(X)返回X的绝对值
ceil返回大于或等于x的最小整数
floor返回小于或等于x的最小整数
GERATEST返回列表中的最大值
LEAST返回列表中的最小值
RAND
借还返国0到1的随机数
ROUND
返回离×最近的整数(遵循四舍五入)
ROUND想(x,y)
返国指定位数的小数(遵循四舍五入)
SELECT ROUND[1.23455,3]-1.235
TRUNCATE(x,y)
返国数值×保留到小数点后y位的值(与
RoUND最大的区别是不会进行四舍五入)
SELECT TRUNCATE(1.23456,3)-
字符串函数
LTRIM(s) 去掉字符串s开始处的空格
去掉字符串RUNo08开始处的空格:
StLECT LTRIM “ RUNOO8" AS LEFTTrim
medString -RUNOO8
MID(s, n, le)
从字符串s的n位置戴取长度为Ien的子字符串,
从字符串RUNCce中的第2个位监截取同
POSITION(S1 IN S)
从字符串s中获取s1的开始位置
REPLACE(s ,s1,s2)
将字符串s2替代字符串s中的字符串s1
REVERSE(s)
将字符串s的顺序反过来:
TRIM(s)
描迷去掉字符串s开始和结尾处的空格
UCASE(s)
将字符串转换为大写
UPPER)(s)
将字符串转换为大写
LCASE(s)
将字符串s的所有字母变成小写字母
LOWER(s)
将字符串s的所有字母变成小写字母
日期函数
时间函数中
%Y表示年
%m表示月
%d表示天
%i表示小时
%s表示秒
UNIX _TIMESTAMP()
返回从1970-01-o1 00:00.c0到当前毫秒值
UNIX_TIMESTAMP(DATE_ STRING)
将制定日期转为毫秒值时间戳
FROM_UNIXTIME(BIGINT UNIXTIME [ STRING
FORMATD ]
SELECT FROM_UNDXTIME(1598079956,‘%Y-%m -%d-%H:%i:%s’ 输出为 2020-08-2215-06-06
CURDATEO 返回当前日期
CURRENT_ DATED
返回当前日期
CURRENT_TIME
返回当前时间
CURTIMED
返国当前时间
CURRENT_ TIMESTAMP()
返口回当前日期和时间
DATE()
从日期成日期时间表达式中提取日期值
SELECT DATEC2017-06-15: 2017.06-15
DATEDIFF(a1,d2)
计算日期d1->d2之间相限的天数
TIMEDIFF(time1,time2)
计算时间差值
SELECT TIMEOIFF13:10:1113:10:10ox:
-200.00:01
DATE_FORMAT(d.f)
按表达式的要求显示日期
STR_ TO_DATE(string, format_mask)
将字符串转变为日期
DATE_SUB(dateINTERVAL exper type)
函数从日期减去脂定的时间间隔