python中,编写带in的sql语句,插入python的list变量,实现动态传值。

例如 sql语句是:

select * from space where space.name in ('shanghai','beijing')

 若想动态实现in 后的内容,可以试试这样

1,使用tuple插入

city_list=["heifei","nanjing","shanghai"]
sql="select * from space where space.name in {}".format(tuple(city_list))
print(sql)

 打印的sql: 

 select * from space where space.name in ('heifei', 'nanjing', 'shanghai')

注意,使用tuple有个坑,就是若元素只有一个的话,会格式不正确,比如:

city_list=["changchun"]
sql="select * from space where space.name in {}".format(tuple(city_list))
print(sql)

打印的sql 会多一个逗号,

select * from space where space.name in ('changchun',)

2,使用str的join方法

city_list=["heifei","nanjing","shanghai"]
sql="select * from space where space.name in ('{}')".format("','".join(city_list))
print(sql)

打印的sql:

select * from space where space.name in ('heifei','nanjing','shanghai')

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐