【发布时间】:2023-02-07 09:11:23
【问题描述】:
我使用 python 中的 a 列创建了一个列表。我正在尝试在 sql 查询中的 where 子句中。列表是帐号列表。
从 df 创建列表
data1
acc_d1= data1['ACCOUNT_NUMBER']
t1 = tuple(acc_d1)
我在 python 中的 sql 查询代码(我正在使用 zeppelin)
sql="""
select id_number from table
where account_number IN {}""".format(t1)
prog_list_d1 = pd.read_sql(sql, dbc)
当我通过手动输入数字创建列表时
acc_d1 = [12129530695080,12129530755769,12129516984649......]
t = tuple(acc_d1)
sql="""
select id_number from table
where account_number IN {}""".format(t)
prog_list_d1 = pd.read_sql(sql, dbc)
它工作得很好。我在飞艇笔记本中使用 python,数据是从 Oracle 数据库中提取的
【问题讨论】:
-
试试
t1 = acc_d1.tolist() -
@oskros 是否定的。这是行不通的
-
t1 = acc_d1.astype(int).tolist()怎么样 - 如果不起作用,错误是什么? -
ORA-01722: 号码无效
标签: python sql plsql apache-zeppelin