我正在尝试在 AWS Athena 上执行以下查询:
CREATE TABLE IF NOT EXISTS salesforce_processed."case"
WITH (
format = 'JSON',
external_location = 's3://path/to/my/bucket/',
partitioned_by = ARRAY['dt_obs']
)
AS
SELECT
nullif(trim("case".id), '') AS "id" ,
try(cast(date_parse("case".dt_obs, '%Y-%m-%d') as date)) as "dt_obs"
FROM salesforce_raw."case" as "case"
但它返回以下错误消息: [ErrorCode: INTERNAL_ERROR_QUERY_ENGINE] Amazon Athena 在执行此查询时遇到内部错误。请联系 AWS 支持以获得进一步帮助。您无需为此查询付费。对于给您带来的不便,我们深表歉意。
没有其他错误信息,如果我单独执行select语句,它会成功运行。
我刚刚在 Athena 引擎版本 2 上遇到了这个问题。
try()
函数是我查询中的罪魁祸首。我的查询之前在 v1 引擎上运行,因此我怀疑升级到 v2 是罪魁祸首。
我找到的唯一解决方案是重写查询以避免
try()
。
我最近遇到过几次这个问题。到目前为止,我有以下原因: