liting李

2021-04-30   阅读量: 1345

Mysql

MySQL 里的 DATE_FORMAT() 和 str_to_date()有什么区别

定义和用法

DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。


语法

DATE_FORMAT(date,format)

date 参数是合法的日期。format 规定日期/时间的输出格式。


可以使用的格式有:


格式描述

%a缩写星期名

%b缩写月名

%c月,数值

%D带有英文前缀的月中的天

%d月的天,数值(00-31)

%e月的天,数值(0-31)

%f微秒

%H小时 (00-23)

%h小时 (01-12)

%I小时 (01-12)

%i分钟,数值(00-59)

%j年的天 (001-366)

%k小时 (0-23)

%l小时 (1-12)

%M月名

%m月,数值(00-12)

%pAM 或 PM

%r时间,12-小时(hh:mm:ss AM 或 PM)

%S秒(00-59)

%s秒(00-59)

%T时间, 24-小时 (hh:mm:ss)

%U周 (00-53) 星期日是一周的第一天

%u周 (00-53) 星期一是一周的第一天

%V周 (01-53) 星期日是一周的第一天,与 %X 使用

%v周 (01-53) 星期一是一周的第一天,与 %x 使用

%W星期名

%w周的天 (0=星期日, 6=星期六)

%X年,其中的星期日是周的第一天,4 位,与 %V 使用

%x年,其中的星期一是周的第一天,4 位,与 %v 使用

%Y年,4 位

%y年,2 位

实例

下面的脚本使用 DATE_FORMAT() 函数来显示不同的格式。我们使用 NOW() 来获得当前的日期/时间:


DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p')


DATE_FORMAT(NOW(),'%m-%d-%Y')


DATE_FORMAT(NOW(),'%d %b %y')


DATE_FORMAT(NOW(),'%d %b %Y %T:%f')


结果类似:


Dec 29 2008 11:45 PM


12-29-2008


29 Dec 08


29 Dec 2008 16:25:46.635




str_to_date()的格式同 DATE_FORMAT一样。

如:

select str_to_date('09/01/2009','%m/%d/%Y')


select str_to_date('20140422154706','%Y%m%d%H%i%s')


select str_to_date('2014-04-22 15:47:06','%Y-%m-%d %H:%i:%s')


年月 可以查询出数据 日格式化为0


image.png


日期字符串不全时候 查询不出数据


image.png


日期格式 年月日时分秒 %Y-%m-%d %H:%i:%s


mybatis使用 >= <= 需要 转换

<![CDATA[ >= ]]> <![CDATA[ <= ]]>


137.2400 2 0 关注作者 收藏

评论(0)


暂无数据

推荐课程