AWS Athena - 如何将字符串列转换为日期? (列包括空)
AWS Athena - How to convert string column to date? (column includes null)
如何使用 Athena 查询编辑器将字符串类型的列转换为日期类型。我正在尝试使用 date_parse(string, format) 但是当我尝试以下操作时遇到以下问题:
SELECT title, email, id, status, (date_parse(issue_date, '%Y-%m-%d %H:%i:%s'))
FROM "database"."table"
我收到以下错误:
INVALID_FUNCTION_ARGUMENT: Invalid format: ""
我知道这是因为我的日期列包含空值。我将如何处理这个问题。如果我尝试执行以下操作 - 它 returns 什么都没有:
SELECT title, email, id, status, (date_parse(issue_date, '%Y-%m-%d %H:%i:%s'))
FROM "database"."table"
WHERE issue_date != NULL
有更简单的方法吗?或者我错过了什么?
感谢您的帮助!
NULL
在数据库中不像在编程语言中那样工作,这会产生各种令人惊讶的结果。要检查某物是否为 NULL
,最好使用 … IS NOT NULL
,例如issue_date IS NOT NULL
.
NULL
in SQL 实际上不等于其他任何东西,因此也不等于其他任何东西。正如 Wikipedia article about SQL NULL
所说“SQL null 是一种状态,而不是值”。
如何使用 Athena 查询编辑器将字符串类型的列转换为日期类型。我正在尝试使用 date_parse(string, format) 但是当我尝试以下操作时遇到以下问题:
SELECT title, email, id, status, (date_parse(issue_date, '%Y-%m-%d %H:%i:%s'))
FROM "database"."table"
我收到以下错误:
INVALID_FUNCTION_ARGUMENT: Invalid format: ""
我知道这是因为我的日期列包含空值。我将如何处理这个问题。如果我尝试执行以下操作 - 它 returns 什么都没有:
SELECT title, email, id, status, (date_parse(issue_date, '%Y-%m-%d %H:%i:%s'))
FROM "database"."table"
WHERE issue_date != NULL
有更简单的方法吗?或者我错过了什么? 感谢您的帮助!
NULL
在数据库中不像在编程语言中那样工作,这会产生各种令人惊讶的结果。要检查某物是否为 NULL
,最好使用 … IS NOT NULL
,例如issue_date IS NOT NULL
.
NULL
in SQL 实际上不等于其他任何东西,因此也不等于其他任何东西。正如 Wikipedia article about SQL NULL
所说“SQL null 是一种状态,而不是值”。