sql - 在 Apache Hive 中将日期格式转换为 YYYY-MM-DD HH:MIN:SEC
问题描述
我正在从 csv 文件将数据加载到配置单元表中。文件有一个名为 last_updated_date 的字段,其值的格式为“20200412013000771+0000”。我需要将其转换为“YYYY-MM-DD HH:MIN:SEC”。
解决方案
您可以使用大量子字符串将其拆分并使用 concats 重新构建它,或者在末尾删除不相关的字符并使用unix_timestamp
and from_unixtime
。
由于您不关心毫秒,因此您只需要前 14 个字符。以下是我的做法:
select from_unixtime (unix_timestamp(substring('20200412013000771+0000',1,14), 'yyyyMMddhhmmss'))
哪个返回
2020-04-12 01:30:00
推荐阅读
- jquery - Html nav 元素自行获取样式
- c# - WebView2如何运行Javascript函数?
- app-store-connect - 收到错误“需要承认 Apple 的 Apple ID 和隐私声明”。
- json - 如何使用 jq 或任何工具合并两个 JSON 文件?
- node.js - 错误:尝试解析模块“child_process”时 React Native
- nginx - nginx let's encrypt SSL certificate 问题:无法获取本地颁发者证书
- django - 类型错误:尝试在 Django 中上传文件时无法序列化“_io.BufferedRandom”对象
- ios - 在 swift 中使用 Delegates 将数据从一个自定义 uitableviewcell 传递到另一个
- azure - 使用 REST API 查询 Blob 内容中的 InvalidQueryParameterValue
- python - 根据输入组在keras中自定义分类损失函数