趣谈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 '.人员';

若本文有帮助到阅读本文的同学,欢迎点赞、关注、收藏,互相学习交流。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/8131.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

matlab——制作箱线图

在数据分析中,如果不知道数据分布的情况下很难判断中位数是否有效或者存在离群点。 离群点指偏离大多数点规律的点。 为了更有效对整体数据进行划分,提出四分位点的概念。即选取概念下界、0.25位点、0.75位点、概念上界。 有一种专门表现四分位点的图像叫…

2023年7月2日leetcode每日一题打卡——125.验证回文串

一、题目描述与要求 125. 验证回文串 - 力扣(LeetCode) 题目描述 如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串 。 字母和数字都属于字母数字字符。 给…

Android仿淘宝、京东、拼多多搜索历史

详情见代码 :https://github.com/yixiaolunhui/FSearchHistory

ECShop 权限管理

如何增加一个新的权限 1、配置菜单所对应的权限code admin/includes/inc_priv.php $purview[02_cost_list] cost_list; 2、配置菜单的语言 languages/zh_cn/admincommon.php $_LANG[02_cost_list] 成本明细; 3、配置权限code的语言 languages/zh_cn/admin/priv_action.p…

【C++】类型转换和IO流

C完结 文章目录 前言一、C的四种类型转换二、IO流总结 前言 首先我们看看C语言中的类型转换: 在 C 语言中,如果 赋值运算符左右两侧类型不同,或者形参与实参类型不匹配,或者返回值类型与 接收返回值类型不一致时,就需…

[Android Studio]1.2计数器

所有要改的代码如下: MainActivity代码: package com.example.code02;import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; imp…

完全背包问题(二维数组 / 一维数组实现)

完全背包 完全背包的一维和二维dp数组 有 N 件物品和容量为 W 的背包,第 i 件物品的重量是 weight[i],价值是 value[i] 每件物品都有无限个,即同一物品能够放入背包多次,求背包所能装入物品的最大价值总和 完全背包和 0-1 背包不…

微服务:Springboot集成Hystrix实现熔断、降级、隔离

文章目录 前言知识积累Springboot集成Hystrix1、maven依赖引入2、application开启feign的hystrix支持(客户端配置限流降级熔断)3、入口类增加EnableFeignClients EnableHystrix 开启feign与hystrix4、feign调用增加降级方法服务端配置限流降级熔断(选择使…

NSS [MoeCTF 2022]ezphp

NSS [MoeCTF 2022]ezphp 先看题目,看到这个就想到了BUU的mark love cat。但是完全不一样,这道题exit()在foreach()之前 法一且唯一: echo回显flag 如果要echo,那么不能exit,那么必须传flag(get或者post&a…

【SLAM学习】FAST-LIO配置

本文主要记录如何配置FAST-LIO Eigen库 Eigen库安装: sudo apt install libeigen3-dev 查看Eigen版本: $ pkg-config --modversion eigen3 PCL库 PCL库安装: sudo apt install libpcl-dev 也可以指定版本安装: sudo apt …

Unity 新输入系统InputAction设置按键的阈值

输入阈值问题 在新的输入系统中,如果添加一个手柄按键只需要添加Pressed就够了,监听他的三个动作就可以得到按下,点击,抬起。 例如下面的代码: inputAction.Player.Trigger_Right.started OnRightTriggerStarted;i…

天翎群晖NAS为全文检索插翅起飞

编者按:企业的文档资料随着企业的业务发展会越来越多,想要某个资料的时候,最怕找不到想要的资料,这时KMS的全文检索功能就非常重要了,只需只言片语的零星关键字,查找文档没压力。 关键词:全文检…