ITPub博客

首页 > > > mysql常用函数总结

mysql常用函数总结

作者:浪花小雨滴 时间:2021-01-12 16:54:09 0 删除 编辑

1.日期转换为字符串

DATE_FORMAT (date, format)能根据格式串format 格式化日期或日期和时间值date,返回结果串。除下述格式外还有很多的格式,如%M 表示月名(January,February.......)

这里介绍使用最多的%Y%m%d %H:%i:%s ,其余如有需要可以百度上查找

select DATE_FORMAT(now(),'%Y%m%d %H:%i:%s');
20181221 16:05:50


2.字符串转为日期

STR_TO_DATE(str,format)函数是将时间格式的字符串(str),按照所提供的显示格式(format)转换为DATETIME类型的值

select STR_TO_DATE('20180912 230212','%Y%m%d %H%i%s');
2018-09-12 23:02:12


3.截取函数

subdate(date,day)截取时间,时间减去后面的day

subtime(expr1,expr2) 时分秒expr1-expr2

substring(str,index,len) 截取str,从index开始,截取len长度,等同于substr()

select SUBSTRING('20180912 230212',1,8);
20180912

select now(),SUBDATE(now(),2)
select now(),SUBTIME(now(),'12:15:22')


4.字符串,日期转为整型

CAST函数语法规则是:Cast(字段名 as 转换的类型 ),其中类型可以为:

CHAR[(N)] 字符型
DATE 日期型
DATETIME 日期和时间型
DECIMAL float型
SIGNED int
TIME 时间型

select CAST(now() as signed);
select CAST('123' as signed)


5.字符串拼接函数

concat(str1, str2,...)返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null

group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator '分隔符'] )说明:通过使用distinct可以排除重复值;如果希望对结果中的值进行排序,可以使用order by子句;separator是一个字符串值,缺省为一个逗号。

SELECT GROUP_CONCAT(userid separator ';') from user
1;2;3;4;5;6;7;22;23
SELECT GROUP_CONCAT(userid) from user
1,2,3,4,5,6,7,22,23


6.字符串截取提取前n个函数

substring_index(str,delim,count)

str:要处理的字符串

delim:分隔符

count:计数

一般我们用来提取第一个元素

str=baidu.com
substring_index(str,'.',1)
结果是:www
substring_index(str,'.',2)
结果是:

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31537575/viewspace-3155654/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-05-16

  • 博文量
    4259
  • 访问量
    40075