是否可以使用Python使用impala的公用表表达式?

问题描述 投票:0回答:1

使用Python的impala.dbapi连接时,每次执行只能运行一个命令。我使用的是Python 2.7。

我想创建两个常见的表表达式然后加入它们,但我无法让它工作。

如果我使用Impala在HUE中运行SQL,则它会失败,因为每次执行只能运行一个命令。

如果我在python中的两个单独的执行中创建公共表表达式并尝试在第三个执行中连接两个CTE我得到错误无法解析“cte ...”它出现CTE在第一次执行后不会留在内存中完成。解决方法是在Impala中创建临时表而不是使用CTE。最终我将使用Spark数据框并加入这些框架,但是权限问题阻止Spark API在不久的将来从Impala表中读取。

python-2.7 common-table-expression impala impyla
1个回答
0
投票

根据我进行的测试,似乎不可能使用impala.dbapi在Python 2.7中使用公用表表达式。这是因为CTE不会使用后续的cursor.execute命令保留在内存中,并且在一个cursor.execute实例中运行两个SQL命令会返回错误。

© www.soinside.com 2019 - 2024. All rights reserved.