当前位置:首页 > 站长知识 > 数据库 > 正文内容

mysql如何匹配字符串函数数据

2024-11-29数据库37

MySQL匹配字符串函数

注意:MySQL索引从1开始

1、like

1
select * from 表名 where 字段名 like "%字符%";

2、locate(字符,字段)

如果包含,返回>0的数(字符所在的第一个索引),否则返回0

1
2
3
-- select * from 表名 where LOCATE('字符', 字段);
select LOCATE('ab', 'abcd');
> 1

3、position(字符 in 字段)

如果包含,返回>0的数(字符所在的第一个索引),否则返回0

1
2
3
-- select * from 表名 where POSITION('字符' IN 字段);
select POSITION('ab' IN 'abcd');
> 1

4、instr(字段,字符)

如果包含,返回>0的数(字符所在的第一个索引),否则返回0

注意:字段在前,要匹配的字符串在后

1
2
3
-- select * from 表名 where INSTR(字段, '字符');
select INSTR('abcd', 'b');
> 2

5、find_in_set(字符,字段)

如果包含,返回>0的数(字符所在的第一个索引),否则返回0

字段以","分割开,常用于字段为数组的情况。

1
2
3
4
5
-- select * from 表名 where FIND_IN_SET('字符', 字段);
select FIND_IN_SET('张三','aa,bb,11,张三');
> 4
select FIND_IN_SET('','aa,bb,11,张三,');
> 5