美文网首页
python拼接 select in语句

python拼接 select in语句

作者: leyu | 来源:发表于2017-01-16 19:55 被阅读0次

拼接sql语句时,有时候参数是一个列表,想实现select in语句的效果,比如sql语句:select * from user where userid in ('A', 'C'),但是只有列表参数args=['A', 'C'],首先尝试了如下方式:

"select * from user where userid in (%s)"  % (','.join(args))

发现会报错"Unknown column 'A' in 'where clause'',原因是拼接出来的没有带引号。最后拼成了

select * from user where userid in (A, C)

最后解决方案是:

Python 3:

args=['A', 'C']
sql='SELECT fooid FROM foo WHERE bar IN (%s)'
 in_p=', '.join(list(map(lambda x: "'%s'" % x, args)))
sql = sql % in_p
cursor.execute(sql, args)

Python 2:

args=['A', 'C']
sql='SELECT fooid FROM foo WHERE bar IN (%s)' 
in_p=', '.join(map(lambda x: "'%s'" % x, args))
sql = sql % in_p
cursor.execute(sql, args)

相关文章

  • python拼接 select in语句

    拼接sql语句时,有时候参数是一个列表,想实现select in语句的效果,比如sql语句:select * fr...

  • MySql创建拼接字段

    拼接字段 拼接 将多个值联结在一起拼接成单个值。 在MySQL的SELECT 语句中,可使用Concat() 函数...

  • MyBatis传参数

    传递业务参数给sql语句,可用于动态拼接sql语句。在xml中的select标签中,参数节点parameterTy...

  • 创建计算字段

    字段(filed) = 列(column)。 计算字段是运行时在SELECT语句中创建的·。 1.拼接字段(Con...

  • python SQL模糊查询语句问题

    在Python上如果使用sql语句:select * from table_name where field_na...

  • [实战]mysql子查询

    联合查询 将多条select语句记录上拼接语法: 子查询 查询实在某个查询结果之上. 按位置分类: 按结果分类 举...

  • 六、ORACLE 子查询

    子查询在SELECT、UPDATE、DELETE语句内部可以出现SELECT语句。内部SELECT语句结果作为外部...

  • 03 - 查询基础

    SELECT 语句 列的查询 基本的 SELECT 语句 语法: 说明: 该 SELECT 语句包含了 SELEC...

  • MySQL深度知识三(摘自sql官方文档)

    SQL SELECT INTO 语句可用于创建表的备份复件。 SELECT INTO 语句SELECT INTO ...

  • java_sql子查询

    子查询:select语句里面嵌套select语句 子查询出现的问题:select ..(select).from....

网友评论

      本文标题:python拼接 select in语句

      本文链接:https://www.haomeiwen.com/subject/gqmpbttx.html