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操作符怎么用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注恰卡编程网行业资讯频道,小编每天都会为大家更新不同的知识点。
推荐阅读
-
python(中无效的十进制怎么解决 python怎么转换进制)
python怎么转换进制?Python执行二进制转换:1.十进制到二进制(bin)首先,让让我们看看如何将十进制转换成二进制。我...
-
python怎么清除完全相同的行(python splte如何分隔有多个相同符号的str)
pythonsplte如何分隔有多个相同符号的str?str你的string内容str_(相同的符号)执行完了以后再在相同符号的...
-
python(编程控制电脑关机 如何控制电脑关机)
如何控制电脑关机?可以在电脑的运行窗口中输入输入公式,给电脑可以设置自动关机。1.按开快捷键winr然后打开运行窗口。2.在运行窗...
-
navicat(for mysql 过期如何解决 Navicat for MySQL如何使用)
NavicatforMySQL如何使用?1.下载NavicatforMySQL软件后。2.在文件里找到navicat.Na...
-
python中的特殊标识符(python 中 标识符中可以有逗号吗)
python中标识符中可以有逗号吗?在python语言中合法的标识符是字母、数字以及_,所以我合法的标识符中肯定不能有逗号if...
-
python(excel 提取数据写入新表 python导入excel数据找不到工作簿)
python导入excel数据找不到工作簿?我可以导入数据后找不到工作,不是因为他的工作没有被转移。什么软件可提取并合并Exce...
-
python中字典定义的四种方法(python global关键字的用法详解)
pythonglobal关键字的用法详解?global标志实际上是目的是提示python讲解器,说被其修饰的变量是全局变量。这样...
-
python(array用法 python如何对两个数组做差处理)
python如何对两个数组做差处理?Python中的列表中的元素肯定不能真接相加,减。t最佳的位置的是将列表装换成Python中的...
-
pycharm(mysql 安装教程 学python这条路怎么走)
学python这条路怎么走?如何学习Python?这是很多新手都会问的问题。这时候问问自己,学Python到底想干什么?为了兴趣?...
-
python多行注释符号怎么表示
python多行注释符号怎么表示这篇文章主要介绍“python多行...