Pyathena SQL 条件为 Python 的查询

Pyathena SQL Query with Python condition

给出以下 python 列表:

customer_list = [123,567,494]

现在我想 运行 一个 SQL 查询,我在其中使用上面的列表。如何将条件 in (customer_list) 添加到我的查询中?

我试过了:

my_query = """
select * from my_table
where customer in ("""+customer_list")" 
"""
order by name
"""

这给了我错误: TypeError:一元 + 的错误操作数类型:'str'

您可以将查询中的 customer_list 替换为 :

', '.join(str(element) for element in customer_list)

您可以尝试类似的方法:

customer_list = [123,567,494]

my_query = """
select * from my_table
where customer in ({cust_list}) 
order by name
""".format(cust_list=",".join(str(x) for x in customer_list))

输出:

select * from my_table where customer in (123,567,494) order by name