mysql判断查询条件是否包含某字符串的7种方式

本文介绍了MySQL中七种不同的方式来判断查询条件是否包含特定字符串,包括like、locate、position、instr、find_in_set、正则表达式以及使用CONCAT处理以逗号分隔的字符串查询。
摘要由CSDN通过智能技术生成

mysql判断查询条件是否包含某字符串的7种方式


)

like 也就是模糊查询 如:select user_name from sys_user where user_name like ‘%李%’

在这里插入图片描述

locate 判断是否包含某字符串 如:select user_name from sys_user where locate(‘云’,user_name)>0

在这里插入图片描述

position 判断是否包含某字符串 如:select user_name from sys_user where POSITION(‘云’ IN user_name) > 0
在这里插入图片描述

instr 判断是否包含某字符串 如:select user_name from sys_user where instr(user_name,‘云’)>0
在这里插入图片描述

find_in_set 正好反过来,库里字段的值是否被包含在条件字符串里 如下:

select * from user where find_in_set (user_name,‘李刚,刘备’)>0

正则匹配两个字符串是否含有交集,我中有你,你中有我,如有共同部分,则返回数据,如下:
在这里插入图片描述

select * from user where user_name REGEXP REPLACE(‘李刚,刘备’,‘,’,‘|’)

在这里插入图片描述

CONCAT(‘,’,str,‘,’) 查询某字段中以逗号分隔的字符串的方法,好处是如果是数字逗号拼接的话,查询的参数是个位数的话,很容易查询出一大堆覆盖个位数的多位数数字

select user_name from sys_user where CONCAT(‘,’,‘尹云,贺云强’,‘,’) like ‘%,尹云,%’

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值