iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python中SQL——LIKE中的%
  • 862
分享到

Python中SQL——LIKE中的%

PythonSQL 2023-01-31 02:01:17 862人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

转载自:Http://blog.csdn.net/chenxiao_ji/article/details/51332791 需求:做项目的过程中,使用了Mysql数据库,后台使用python来做逻辑层。项目中需要实现一个功能,通过输入搜索框

转载自:Http://blog.csdn.net/chenxiao_ji/article/details/51332791

需求:

项目的过程中,使用了Mysql数据库,后台使用python来做逻辑层。项目中需要实现一个功能,通过输入搜索框中的字符去mysql中找到匹配的文章的标题。

SQL语句:

SELECT * FROM T_ARTICLE WHERE title LIKE '%searchStr%'

报错:

但是在Python中%是一个格式化字符,所以如果需要使用%则需要写成%%。从网上查了一些帖子,大多数人的回答是:

cur.execute("SELECT* from  T_ARTICLE WHERE title LIKE '%%%s%%'" %  searchStr)

或者

cur.execute("SELECT* from  T_ARTICLE WHERE title LIKE %s" %  ('%%%s%%' % searchStr))

这样print出sql语句之后为:

SELECT * FROM T_ARTICLE WHERE title LIKE '%生活%'

并且会报错  TypeError: not enough arguments for fORMat string

这个错误很明显是提示格式化的时候出现了问题。

解决:

最终将在Python中执行的sql语句改为:

sql = "SELECT * FROM T_ARTICLE WHERE title LIKE '%%%%%s%%%%'" % searchStr

执行成功,print出SQL语句之后为:

SELECT * FROM T_ARTICLE WHERE title LIKE '%%生活%%'

原因:

Python在执行sql语句的时候,同样也会有%格式化的问题,仍然需要使用%%来代替%。因此要保证在执行sql语句的时候格式化正确。而不只是在sql语句(字符串)的时候正确。


--结束END--

本文标题: Python中SQL——LIKE中的%

本文链接: https://www.lsjlt.com/news/185610.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python中SQL——LIKE中的%
    转载自:http://blog.csdn.net/chenxiao_ji/article/details/51332791 需求:做项目的过程中,使用了MySQL数据库,后台使用Python来做逻辑层。项目中需要实现一个功能,通过输入搜索框...
    99+
    2023-01-31
    Python SQL
  • sql中like的用法
    在SQL中,LIKE是用于模糊匹配的操作符。它可以在WHERE子句中与SELECT、UPDATE或DELETE语句一...
    99+
    2023-08-29
    sql
  • sql中like和=的区别
    like 和 = 是 sql 中用于字符串比较的运算符,主要区别在于 like 允许通配符模糊匹配(% 和 _),而 = 仅适用于完全匹配。like 适用于模糊查询,性能较慢,且无法使用...
    99+
    2024-05-02
  • sql中like怎么用
    这篇文章给大家分享的是有关sql中like怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。sql中like的用法:操作符LIKE利用通配符把一个值与类似的值进行比较,通配符有...
    99+
    2024-04-02
  • sql中like和in的用法
    sql 中 like 用于查找包含特定模式的字符串,支持通配符,但效率不及 in 操作符。in 用于查找与指定值列表匹配的字段,更快速且支持索引优化。建议在查找特定值时使用 in,在查找...
    99+
    2024-05-02
  • sql中like表示什么
    sql like 运算符用于进行模式匹配,语法是 select * from table_name where column_name like pattern; 模...
    99+
    2024-04-28
  • sql中的like是什么意思
    sql 中的 like 运算符用于寻找匹配特定模式的值,它使用通配符 %(匹配任意字符)和 _(匹配单个字符)。like 运算符通常与 where 子句结合使用,用于过滤表中的...
    99+
    2024-05-02
  • SQL中like的用法是什么
    在SQL中,LIKE是用于在 WHERE 子句中进行模糊匹配的操作符。它通常与通配符一起使用,以便查找具有特定模式的数据。 ...
    99+
    2024-04-09
    SQL
  • sql中多个like怎么写
    在 sql 中,使用多个 like 条件来匹配部分匹配的字符串值,可采用以下方法:使用 or 操作符连接多个 like 条件,匹配满足任意条件的行。使用 in 操作符指定值列表,匹配列值...
    99+
    2024-05-02
  • sql中like语句怎么用
    like 语句用于在 sql 中根据模式匹配字符或字符串,语法为:select column_name from table_name where column_na...
    99+
    2024-05-02
  • sql中like语句怎么写
    sql 中的 like 语句用于根据模式匹配字符串,它使用 % 和 _ 通配符分别匹配零个或多个字符和单个字符。like 语句的语法为:select * from table_...
    99+
    2024-05-02
  • sql语句中的like怎么使用
    在SQL语句中,LIKE是用于模糊匹配字符串的操作符。它通常与通配符一起使用,可以在WHERE子句中筛选满足特定条件的数据。...
    99+
    2023-09-29
    sql
  • SQL中like的写法是怎样的
    本篇内容主要讲解“SQL中like的写法是怎样的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SQL中like的写法是怎样的”吧!某交易系统,监控告警有长SQL...
    99+
    2024-04-02
  • sql中like怎么写不等于
    在 sql 中,使用 not like 操作符可以查询不等于特定模式的字符串。语法:select * from table_name where column_nam...
    99+
    2024-04-29
  • SQL中like的语法规则是什么
    在SQL中,LIKE是用于在WHERE子句中进行模糊搜索的操作符。它的语法规则如下:SELECT column_na...
    99+
    2023-09-29
    SQL
  • sql中rlike和like的区别是什么
    在SQL中,LIKE和RLIKE是用于模式匹配的操作符,但它们在语法和功能上有所不同。 LIKE是用于在字符串中查找特定模式的操作...
    99+
    2024-04-09
    sql
  • mysql中like的用法
    mysql中like的用法:使用语法“select * from 表名 where 字段名 like '%1%'”,意思为查询某表指定字段中所有包含“1”的数据记录,like操作符主要是用来在wher&#...
    99+
    2024-04-02
  • SQL Server中怎么利用LIKE使用变量类型
    本篇文章为大家展示了SQL Server中怎么利用LIKE使用变量类型,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。如下所示:CREATE TABLE&n...
    99+
    2024-04-02
  • python中数据库like模糊查询
    在Python中%是一个格式化字符,所以如果需要使用%则需要写成%%。将在Python中执行的sql语句改为:sql = "SELECT * FROM table_test WHERE value LIKE '%%%%%s...
    99+
    2023-01-31
    模糊 数据库 python
  • mysql中like怎么用
    like 运算符用于 mysql 中的模式匹配,它使用通配符匹配字符序列,包括:%:匹配零个或多个字符。_:匹配单个字符。[ ]:匹配方括号内列出的任何字符。 MySQL 中 LIKE...
    99+
    2024-04-29
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作