我无法在Lambda中的Athena boto3查询中使用current_date + interval

0

【以下的问题经过翻译处理】 我尝试使用Lambda来运行Athena查询,以便安排每周运行的报告。当我直接在Athena中运行查询时,我得到了结果。当我作为Python boto3查询运行时,如果我尝试使用'current_date + interval',它就不起作用。

在Athena查询编辑器中工作: SELECT * FROM "datebasename"."table" where date < current_date + interval '1' day);

**在Lambda中运行时出现错误 **

Syntax error in module 'lambda_function': invalid syntax (lambda_function.py, line 6)
"stackTrace": [
    "  File \"/var/task/lambda_function.py\" Line 6\n    query ='SELECT * FROM \""datebasename"\".\"table\" where date < (current_date + interval '1' day))'\n"
  ]

如果我从lambda Athena查询中删除'+ interval '1' day',它就可以工作。我已经尝试使用括号,并尝试使用date_add,当我使用interval时有类似的结果。

是否有什么我需要更改以允许在boto3 Athena查询中使用interval?

profile picture
ESPERTO
posta 6 mesi fa26 visualizzazioni
1 Risposta
0

【以下的回答经过翻译处理】 看起来像是语法错误。你在Python代码中用单引号包裹了查询语句,又用单引号包裹了“1”。你需要在“1”上要么转义单引号,要么去掉单引号。

profile picture
ESPERTO
con risposta 6 mesi fa

Accesso non effettuato. Accedi per postare una risposta.

Una buona risposta soddisfa chiaramente la domanda, fornisce un feedback costruttivo e incoraggia la crescita professionale del richiedente.

Linee guida per rispondere alle domande