MySQL 多个%等模糊查询功能实现
更新时间:2023年07月05日 15:01:45 作者:GoodTimeGGB
这篇文章主要介绍了MySQL 多个%等模糊查询功能实现,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
一、建表并插入数据
1、创建一个people表
DROP TABLE IF EXISTS `people`; CREATE TABLE `people` ( `id` int NOT NULL COMMENT '主键', `name` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '姓名', `sex` tinyint NOT NULL COMMENT '性别', `age` int NOT NULL COMMENT '年龄', `phone` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '联系方式', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
2、向people表添加数据
insert into people values(1,'测试人员',18,1,'13812345678'); insert into people values(2,'测测人员',19,0,'13812345679'); insert into people values(3,'人员测试',20,1,'13812345680'); insert into people values(4,'测试人员1',21,0,'13812345681'); insert into people values(5,'员人试测',22,1,'13812345682');
二、查询语句
-- 1、模糊查询(单个条件) select * from people where name like '%测%';

-- 2、模糊查询(多个条件) select * from people where name like '%测%' and name like '%人%';

select * from people where name like '%测%' or name like '%人%';

------有趣的查询(网页端前端传参%测试)------
-- 3、模糊查询(顺序执行) select * from people where name like '%测%人%';

select * from people where name like '%人%测%';

-- 4、_: 表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句 select * from people where name like '测试人员_';

select * from people where name like '__人员';

注:mysql 通配符查询必须用 rlike
-- 5、[ ]:表示括号内所列字符中的一个(类似正则表达式)。指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。 select * from people where name rlike '[试]人员';

-- 6、[^ ] :表示不在括号所列之内的单个字符。其取值和 [] 相同,但它要求所匹配对象为指定字符以外的任一个字符 ^ 非。 select * from people where name rlike '[^试]人员';

-- 7、^:以xx开头的记录 select * from people where name rlike '^测';

-- 8、$:以xx结尾的记录 select * from people where name rlike '员$';

-- 9、.:任意单个的 select * from people where name rlike '.人员';

到此这篇关于MySQL 多个%等模糊查询的文章就介绍到这了,更多相关mysql模糊查询内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
mysql 8.0.15 winx64压缩包安装配置方法图文教程
这篇文章主要为大家详细介绍了mysql 8.0.15 winx64压缩包安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2019-05-05
Win 8或以上系统下MySQL最新版5.7.17(64bit ZIP绿色版)安装部署教程
这篇文章主要为大家详细介绍了Win 8或以上系统下MySQL最新版5.7.17 64bit ZIP绿色版安装部署教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-05-05
mysql could not be resolved: Name or service not known
今天查看mysql日志的时候发现[Warning] IP address '10.0.0.220' could not be resolved: Name or service not known,原来是mysql DNS反解:skip-name-resolve的原因,屏蔽一下就可以了2015-08-08
CentOS下编写shell脚本来监控MySQL主从复制的教程
这篇文章主要介绍了在CentOS系统下编写shell脚本来监控主从复制的教程,文中举了两个发现故障后再次执行复制命令的例子,需要的朋友可以参考下2015-12-12
mysql 数据插入优化方法之concurrent_insert
在MyISAM里读写操作是串行的,但当对同一个表进行查询和插入操作时,为了降低锁竞争的频率,根据concurrent_insert的设置,MyISAM是可以并行处理查询和插入的2021-07-07


最新评论