Mysql字符串字段判断是否包含某个字符串的方法

摘要:SELECT * FROM users WHERE find_in_set('标志符', 字段名名名);那般是可以的,怎样掌握呢?mysql有很多标志符串涵数 find_in_set(str1,str2)涵数是返回str2中str1隶属的位置数据信息库数据库索引,str2尽...

SELECT * FROM users WHERE find_in_set('标识符', 字段名名);
那样是能够的,如何了解呢?
mysql有许多标识符串涵数 find_in_set(str1,str2)涵数是回到str2中str1所属的部位数据库索引,str2务必以","切分开。
拷贝编码
 注:当str2为NO1:“3,6,13,24,33,36”,NO2:“13,33,36,39”时,分辨2个数据信息中str2字段名是不是包括‘3’,该涵数可极致处理
mysql SELECT find_in_set()('3','3,6,13,24,33,36') as test;
- 1
mysql SELECT find_in_set()('3','13,33,36,39') as test;
- 0
拷贝编码
  方式三:locate(标识符,字段名名) 应用locate(标识符,字段名名)涵数,假如包括,回到 0的数,不然回到0 ,
它的别称是 position in
select * from 表名 where locate(标识符,字段名)
select * from 表名 where position(标识符 in 字段名);
事例:分辨site表格中的url是不是包括''子串,假如不包括则拼凑在url标识符串开始
update site set url =concat('',url) where locate('',url)=0 
留意mysql中标识符串的拼凑不可以应用加号+,用concat涵数
 方式四:INSTR(字段名,标识符)
select * from 表名 where INSTR(字段名,标识符)
 
此外,小编查询了之上SQL的实行方案(不包括find_in_set),发觉全是:
在网上说模糊不清查寻 用 locate 速率快,不知道道结果如何来的,将会是绝大多数据量的状况一下吧。
巴林左旗企业网站建设


文章内容源于:-尚网汇智 net2006 如转截请标明出處!



联系我们

全国服务热线:4000-399-000 公司邮箱:343111187@qq.com

  工作日 9:00-18:00

关注我们

官网公众号

官网公众号

Copyright?2020 广州凡科互联网科技股份有限公司 版权所有 粤ICP备10235580号 客服热线 18720358503

技术支持:网站免费建站