python中的mysql数据库LIKE操作符怎么用
python中的mysql数据库LIKE操作符怎么用
这篇文章主要介绍“python中的mysql数据库LIKE操作符怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python中的mysql数据库LIKE操作符怎么用”文章能帮助大家解决问题。
LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。
语法:
SELECTcolumn_name(s)FROMtable_nameWHEREcolumn_nameLIKEpattern
pattern这里就是放指定模板的地方,而这里就要用到“ % ”,也叫做通配符
%如果是放在条件前面,那就是查以...结尾的数据;例如:%李
%如果是放在条件后面,那就是查以...开头的数据;例如:李%
%如果是在条件前后都存在,那就是查包含的数据;例如:%李%
小知识点:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near "%z" at line 1
1064的错误就是LIKE查询时(语法错误),通配符处没加引号,所以才会报错...
正确展示例如:"%李%"
示例1:终端运行sql且WHERE子句中使用LIKE
查询地址以Hang开头的人员信息
root@7c6316b19d80:/#mysql-uroot-pEnterpassword:WelcometotheMySQLmonitor.Commandsendwith;org.YourMySQLconnectionidis140Serverversion:5.6.51MySQLCommunityServer(GPL)mysql>mysql>select*fromtest_userwhereaddresslike"Hang%";+----+--------+-------------+----------+|id|name|mobile|address|+----+--------+-------------+----------+|3|python|18856565858|Hangzhou||4|java|17756565858|Hangzhou||5|php|15556565858|Hangzhou||6|c#|17748484142|Hangzhou|+----+--------+-------------+----------+4rowsinset(0.00sec)mysql>
查询地址以u结尾的人员信息
mysql>select*fromtest_userwhereaddresslike"%u";+----+--------+-------------+----------+|id|name|mobile|address|+----+--------+-------------+----------+|3|python|18856565858|Hangzhou||4|java|17756565858|Hangzhou||5|php|15556565858|Hangzhou||6|c#|17748484142|Hangzhou|+----+--------+-------------+----------+4rowsinset(0.00sec)mysql>
示例2:使用python脚本执行含LIKE的sql语句
查询地址包含z字符的人员信息
importpymysql#连接数据库connection=pymysql.connect(host="localhost",user="root",password="123456",database="testing",port=3306,charset="utf8",cursorclass=pymysql.cursors.DictCursor)try:withconnection:withconnection.cursor()ascursor:sql="""SELECT*FROMtest_userWHEREaddressLIKE"%z%";"""cursor.execute(sql)result=cursor.fetchall()foriinresult:print(i)exceptpymysql.err.MySQLErroras_error:raise_error
{"id":3,"name":"python","mobile":"18856565858","address":"Hangzhou"}{"id":4,"name":"java","mobile":"17756565858","address":"Hangzhou"}{"id":5,"name":"php","mobile":"15556565858","address":"Hangzhou"}{"id":6,"name":"c#","mobile":"17748484142","address":"Hangzhou"}Processfinishedwithexitcode0
查询地址不包含z字符的人员信息
try:withconnection:withconnection.cursor()ascursor:sql="""SELECT*FROMtest_userWHEREaddressNOTLIKE"%z%";"""cursor.execute(sql)result=cursor.fetchall()foriinresult:print(i)exceptpymysql.err.MySQLErroras_error:raise_error
{"id":1,"name":"张三三","mobile":"17748484141","address":"浙江杭州"}{"id":9,"name":"111","mobile":"18847474549","address":"浙江杭州"}Processfinishedwithexitcode0
知识点扩展:python中的mysql数据库like模糊查询
%在python中是个特殊的符号,如%s,%d分别代表了字符串占位符和数字占位符。
大家知道,mysql的模糊查询也需要用到%。
所以,可以先把需要查的字符串抽出来,再以参数方式传入。
args="%"+subtitle+"%"sqlQueryTitle="selectcount(*)fromtbl_peng_articlewheretitlelike"%s""%args
关于“python中的mysql数据库LIKE操作符怎么用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注恰卡编程网行业资讯频道,小编每天都会为大家更新不同的知识点。
推荐阅读
-
Linux如何安装和配置 FreeRadius 服务器
-
Linux怎样设置定时备份 MySQL 数据库的任务
-
Python 3.12 新特性解析:模式匹配增强与性能优化实战
-
Lightly IDE 深度评测:轻量级 Python 开发工具是否适合团队协作?
-
VS Code 自定义配置:JSON 文件修改、代码片段与任务自动化脚本
-
Python 虚拟环境选择:venv、conda、poetry 的适用场景对比
-
PyCharm+GitHub Copilot:Python 开发中 AI 辅助编码的最佳实践
-
PyCharm 无法识别虚拟环境?5 步排查 Python 解释器配置问题
-
数据科学工具链:Jupyter Notebook+RStudio+Python 的协同工作流
-
Python 3.12 新特性:模式匹配增强与性能改进实战