Я использую пакет Boto3 в python3 для выполнения запроса Athena. Из документации в Boto3 я понимаю, что могу указать контекст выполнения запроса, то есть имя базы данных, под которой должен выполняться запрос. При правильно заданном контексте выполнения запроса мы можем опустить полное имя таблицы (db_name.table_name
) в запросе и вместо этого использовать только имя таблицы.
Таким образом, запрос SELECT * FROM db1.tab1
можно преобразовать в SELECT * FROM tab1
с QueryExecutionContext : {'database':'db1'}
Проблема: Мне нужно запустить запрос на Афина из python, который выглядит примерно так
SELECT *
FROM ((SELECT *
FROM db1.tab1 AS Temp1)
INNER JOIN (SELECT *
FROM db2.tab2 AS Temp2)
ON temp1.id = temp2.id)
Как мы видим запрос объединяет таблицы из двух разных баз данных. Если я хочу опустить имена баз данных в этом запросе, как мне указать QueryExecutionContext
?