从 csv 文件定义时间戳失败
failed defining the timestamp from csv file
我正在尝试将数据从 S3 存储到我的 Athena 数据库中,我的日期时间格式如下所示:-
20171011133902
我正在尝试将格式设置为时间戳,但它无法识别,因此没有数据插入 table。
我将格式设置为 bigint 只是为了插入数据,我的查询看起来像这样。
CREATE EXTERNAL TABLE IF NOT EXISTS default.elb_logs (
'request_timestamp' bigint, 'id' int, .....)
我尝试在 Quicksight 中进行转换,但是当我编辑数据字段并将其更改为日期时,我变成了这样:-
2033-12-02T01:51:53.000Z
有人可以帮我处理这种类型的日期格式吗?
我建议将日期时间作为字符串加载,然后使用 parse_datetime 函数将其解析为 select 查询中的时间戳。对于 JSON 数据,如:
{"dt": "20171011133902", ... }
并且您的 date/time 字段定义为字符串:
CREATE EXTERNAL TABLE scratch.test_dates (
`dt` string
)
...
使用 parse_datetime
将 dt 重新格式化为正确时间戳的查询:
SELECT
parse_datetime(dt, 'YYYYMMddHHmmss') as parsed_date
FROM
scratch."test_dates"
将产生带时区的时间戳(在您的情况下为 UTC):
2017-10-11 13:39:02.000 UTC
有 2 种解决方案:-
- 我确实在 Quicksight 上使用了 parseDate 函数并且它有效。 (不更改 Athena DB 上的数据类型)-->仅在您不使用 SPICE
时有效
parseDate(uploadtimestamp, 'yyyyMMddHHmmss')
- 我还发现我需要更改它的字符串(在 Athena DB 上),以便转换为日期按钮在 QuickSight 上正常工作。
CREATE EXTERNAL TABLE IF NOT EXISTS default.elb_logs ( 'request_timestamp' string, 'id' int, .....)
我正在尝试将数据从 S3 存储到我的 Athena 数据库中,我的日期时间格式如下所示:-
20171011133902
我正在尝试将格式设置为时间戳,但它无法识别,因此没有数据插入 table。 我将格式设置为 bigint 只是为了插入数据,我的查询看起来像这样。
CREATE EXTERNAL TABLE IF NOT EXISTS default.elb_logs ( 'request_timestamp' bigint, 'id' int, .....)
我尝试在 Quicksight 中进行转换,但是当我编辑数据字段并将其更改为日期时,我变成了这样:-
2033-12-02T01:51:53.000Z
有人可以帮我处理这种类型的日期格式吗?
我建议将日期时间作为字符串加载,然后使用 parse_datetime 函数将其解析为 select 查询中的时间戳。对于 JSON 数据,如:
{"dt": "20171011133902", ... }
并且您的 date/time 字段定义为字符串:
CREATE EXTERNAL TABLE scratch.test_dates (
`dt` string
)
...
使用 parse_datetime
将 dt 重新格式化为正确时间戳的查询:
SELECT
parse_datetime(dt, 'YYYYMMddHHmmss') as parsed_date
FROM
scratch."test_dates"
将产生带时区的时间戳(在您的情况下为 UTC):
2017-10-11 13:39:02.000 UTC
有 2 种解决方案:-
- 我确实在 Quicksight 上使用了 parseDate 函数并且它有效。 (不更改 Athena DB 上的数据类型)-->仅在您不使用 SPICE 时有效
parseDate(uploadtimestamp, 'yyyyMMddHHmmss')
- 我还发现我需要更改它的字符串(在 Athena DB 上),以便转换为日期按钮在 QuickSight 上正常工作。
CREATE EXTERNAL TABLE IF NOT EXISTS default.elb_logs ( 'request_timestamp' string, 'id' int, .....)