mysql中怎么把日期的格式转换为YYYYMMDD的数字形式,谢谢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql中怎么把日期的格式转换为YYYYMMDD的数字形式,谢谢相关的知识,希望对你有一定的参考价值。

mysql中怎么把日期的格式转换为YYYYMMDD的数字形式,谢谢

参考技术A SELECT DATE_FORMAT(create_time,'%Y%m%d%H%i%s') FROM table;
%Y%m%d%H%i%s 年月日时分秒
%Y%m%d 对应 YYYYMMDD本回答被提问者采纳

如何将 YYYYMMDD 格式(int)的日期转换为配置单元中的日期时间格式?

【中文标题】如何将 YYYYMMDD 格式(int)的日期转换为配置单元中的日期时间格式?【英文标题】:How to convert date in YYYYMMDD format (int) to datetime format in hive? 【发布时间】:2019-12-11 13:10:04 【问题描述】:
 select from_unixtime(unix_timestamp('20190901','yyyymmdd'));
OK
+----------------------+
|         _c0          |
+----------------------+
| 2019-01-01 00:09:00  |
+----------------------+

所需的输出是 2019-09-01 00:00:00 。我做错了什么?

【问题讨论】:

不确定如何格式化显示 【参考方案1】:

想通了。 mm 是分钟,MM 是月。

应该是 yyyyMMdd 而不是 yyyymmdd

【讨论】:

【参考方案2】:

高效的方法是使用substr和concat_ws:

 with your_table as (select 20190901 as initial_date)
   select concat_ws('-',substr(initial_date, 1, 4),  substr(initial_date, 5, 2), substr(initial_date, 7, 2)) as dt from your_table;

结果

2019-09-01

或者使用 regexp_replace:

   select regexp_replace(initial_date, '^(\\d4)(\\d2)(\\d2)$','$1-$2-$3')

如果您更喜欢使用 unix_timestamp,请使用正确的格式 'yyyyMMdd':

 select from_unixtime(unix_timestamp('20190901','yyyyMMdd'));

在此处查看数据格式:SimpleDateFormat

【讨论】:

以上是关于mysql中怎么把日期的格式转换为YYYYMMDD的数字形式,谢谢的主要内容,如果未能解决你的问题,请参考以下文章

怎么将mysql查询的日期类型转为yyyy-MM-dd

如何把yyyy-mm-dd日期格式转化成yyyymmdd格式

hvie sql日期转换成字符串 格式为YYYYMMDD 怎么写?

怎么将excel的日期格式YYYYMMDD转换为YYYY-MM-DD

js时间转换,能够把时间转换成yyyymmdd格式或yyyymm格式

excel 怎么把时间转换成字符串