MYSQL中日期与字符串间的相互转换

Posted C碧水蓝天S

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MYSQL中日期与字符串间的相互转换相关的知识,希望对你有一定的参考价值。

一、字符串转日期

下面将讲述如何在MySQL中把一个字符串转换成日期:

背景:rq字段信息为:20100901

1、无需转换的:

SELECT * FROM tairlist_day WHERE rq>‘2010-07-31‘ AND rq<‘2010-09-01‘

2、使用:DATE_FORMAT

SELECT * FROM tairlist_day WHERE DATE_FORMAT( rq, ‘%Y-%m-%d‘)>‘2010-08-01‘ AND DATE_FORMAT( rq, ‘%Y-%m-%d‘)<‘2010-08-03‘

其中第1要在一个“宽松”的语法是被允许的:以任何标点符号作为日期部分和时间部分中的定界符,如:

一个 YYYYMMDD 或 YYMMDD 格式的数字,只要数字看起来像是一个日期。例如,19830905 和 830905 被解释成为 ‘1983-09-05 ‘。 

建议使用第2种

 

 

二、日期转字符串

 

mysql> select date_format(now(),‘%Y‘);
+-------------------------+
| date_format(now(),‘%Y‘) |
+-------------------------+
| 2009                    |
+-------------------------+
1 row in set (0.00 sec)

扩展:

%Y:年
%c:月
%d:日
%H:小时
%i:分钟
%s:秒

mysql> select date_format(now(),‘%Y-%c-%d %h:%i:%s‘);
+----------------------------------------+
| date_format(now(),‘%Y-%c-%d %h:%i:%s‘) |
+----------------------------------------+
| 2009-8-07 06:59:40                     |
+----------------------------------------+
1 row in set (0.00 sec)

 

以上是关于MYSQL中日期与字符串间的相互转换的主要内容,如果未能解决你的问题,请参考以下文章

mysql与oracle的日期/时间函数小结

mysql 时间与字符串相互转换

mysql 时间戳与日期格式的相互转换

MySql数据库怎样把Long时间与日期相互转换

mysql 时间戳与日期格式的相互转换

java 时间戳与日期字符串相互转换