Teradata Python:teradata.api.InterfaceError

Teradata Python: teradata.api.InterfaceError

我有一个简单的 select 查询,从 python 脚本到 select 来自 Teradata DB 的数据,如下所示,

session.execute("select distinct v_column from a_table where a_column in (?)",(值))

本例中的值是一个元组,其中包含从其他查询中派生的值。

如果我从变量中传入一个值,这个查询就可以正常工作。对于超过 1 个 - 我必须更改我的查询以包含更多这样的占位符 (?,?).

我想制作这个动态的或通用的占位符,它可以在任何情况下工作。我尝试了几个选项,但对我来说似乎没有意义。有更好的建议吗?

具有多个值的单个占位符出错: teradata.api.InterfaceError: ('PARAMS_MISMATCH', 'The number of supplied parameters (2) does not match the expected number of parameters (1).')

没关系,它使用占位符的新工作方式工作 "{}".format()

工作查询:

session.execute("select distinct v_column from a_table where a_column in{}".format(value))