从unixtime(unix\u timestamp('20190901','yyyyymmdd')中选择;好的+
chy5wohz1#
-----+| 2019-01-01 00:09:00 |+
scyqe7ek2#
有效的方法是使用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
如果您喜欢使用unix\u时间戳,那么请使用适当的格式 'yyyyMMdd' :
'yyyyMMdd'
select from_unixtime(unix_timestamp('20190901','yyyyMMdd'));
请参见此处的数据格式:SimpleDataFormat
ggazkfy83#
-----+| | c0 |+
jecbmhm34#
--+期望输出为2019-09-01 00:00:00。我做错什么了?
a0zr77ik5#
我想出来了。mm是分,mm是月。它应该是yyyymmdd而不是yyyymmdd
5条答案
按热度按时间chy5wohz1#
-----+| 2019-01-01 00:09:00 |+
scyqe7ek2#
有效的方法是使用substr和concat\ws:
结果
如果您喜欢使用unix\u时间戳,那么请使用适当的格式
'yyyyMMdd'
:请参见此处的数据格式:SimpleDataFormat
ggazkfy83#
-----+| | c0 |+
jecbmhm34#
--+
期望输出为2019-09-01 00:00:00。我做错什么了?
a0zr77ik5#
我想出来了。mm是分,mm是月。
它应该是yyyymmdd而不是yyyymmdd