栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将列表与其他参数绑定到Pandas read_sql_query中的参数

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将列表与其他参数绑定到Pandas read_sql_query中的参数

将其分为三个部分,以帮助隔离问题并提高可读性:

  1. 构建SQL字符串
  2. 设定参数值
  3. 执行pandas.read_sql_query

建立SQL

首先,请确保

?
正确设置占位符。结合使用str.format和str.join和len可以
?
根据
member_list
长度动态填充s
。以下示例假定3个
member_list
元素。

member_list = (1,2,3)sql = """select member_id, yearmonth         from queried_table         where yearmonth between {0} and {0}         and member_id in ({1})"""sql = sql.format('?', ','.join('?' * len(member_list)))print(sql)

退货

select member_id, yearmonthfrom queried_tablewhere yearmonth between ? and ?and member_id in (?,?,?)

设置参数值

现在确保将参数值组织成一个 平面 元组

# generator to flatten values of irregular nested sequences,# modified from answers http://stackoverflow.com/questions/952914/making-a-flat-list-out-of-list-of-lists-in-pythondef flatten(l):    for el in l:        try: yield from flatten(el)        except TypeError: yield elparams = tuple(flatten((201601, 201603, member_list)))print(params)

退货

(201601, 201603, 1, 2, 3)

执行

最后在通话中将

sql
params
值组合在一起
read_sql_query

query = pd.read_sql_query(sql, db2conn, params)


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/653132.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号