从 SQL SELECT 语句中的数组更改日期格式
Change Date Format from an array in SQL SELECT Statement
我有一列 updated_at returns 一个数组
["2019-01-05T17:28:32.506-05:00","2019-06-15T13:22:02.625-04:00"]
但我想要这样的输出日期格式 2019-01-03。
如何在 sql 数据块中完成此操作?
谢谢!
您可以使用“date_trunc”SQL函数来获取日期格式的输出。
date_trunc(fmt, ts) - Returns 时间戳 ts 被截断为格式模型 fmt 指定的单位。 fmt 应该是 [“YEAR”、“YYYY”、“YY”、“MON”、“MONTH”、“MM”、“DAY”、“DD”、“HOUR”、“MINUTE”、“SECOND”之一, “周”、“季度”]
示例:
> SELECT date_trunc('YEAR', '2015-03-05T09:32:05.359');
2015-01-01 00:00:00
> SELECT date_trunc('MM', '2015-03-05T09:32:05.359');
2015-03-01 00:00:00
> SELECT date_trunc('DD', '2015-03-05T09:32:05.359');
2015-03-05 00:00:00
> SELECT date_trunc('HOUR', '2015-03-05T09:32:05.359');
2015-03-05 09:00:00
参考: Databricks - SQL Functions.
希望对您有所帮助。
尝试取消嵌套并将其转换为日期:
with ts_array as
(select array['2019-01-05T17:28:32.506-05:00','2019-06-15T13:22:02.625-04:00'] as tsa)
select unnest(tsa)::date from ts_array ;
我有一列 updated_at returns 一个数组
["2019-01-05T17:28:32.506-05:00","2019-06-15T13:22:02.625-04:00"]
但我想要这样的输出日期格式 2019-01-03。
如何在 sql 数据块中完成此操作?
谢谢!
您可以使用“date_trunc”SQL函数来获取日期格式的输出。
date_trunc(fmt, ts) - Returns 时间戳 ts 被截断为格式模型 fmt 指定的单位。 fmt 应该是 [“YEAR”、“YYYY”、“YY”、“MON”、“MONTH”、“MM”、“DAY”、“DD”、“HOUR”、“MINUTE”、“SECOND”之一, “周”、“季度”]
示例:
> SELECT date_trunc('YEAR', '2015-03-05T09:32:05.359');
2015-01-01 00:00:00
> SELECT date_trunc('MM', '2015-03-05T09:32:05.359');
2015-03-01 00:00:00
> SELECT date_trunc('DD', '2015-03-05T09:32:05.359');
2015-03-05 00:00:00
> SELECT date_trunc('HOUR', '2015-03-05T09:32:05.359');
2015-03-05 09:00:00
参考: Databricks - SQL Functions.
希望对您有所帮助。
尝试取消嵌套并将其转换为日期:
with ts_array as
(select array['2019-01-05T17:28:32.506-05:00','2019-06-15T13:22:02.625-04:00'] as tsa)
select unnest(tsa)::date from ts_array ;