MySQL模糊查找like通配符使用(小白入门篇)
作者:Hunter后端 发布时间:2024-01-17 19:02:53
引言
“ 这是MySQL系列笔记的第八篇,文章内容均为本人通过实践及查阅资料相关整理所得,可用作新手入门指南,或者个人知识点查阅。”
这一节介绍 like 的模糊搜索用法。
跟 like 搭配的通配符有两种,一种是 %,一种是 _
% 是不限次数,不限字符的
_ 是不限字符,但是仅限次数为 1 的
%
_
1、%
% 这个通配符表达的含义是 不限次数、不限字符。
举个例子,如果你写的是:
WHERE name LIKE '%ython'
那么,下面这种数据你都可以匹配上:
ython
python
Python
123ython
asdasdajcaliaython
也就是说,在 ython 前包含了0个或者无数个字符的数据都属于满足要求。
如果想要在 ython 后也能有字符怎么办?在后面加上 % 即可。
也就是说想要在左右两边,哪边需要匹配字符,就往哪边加 %
如果我们尝试下面的语句:
select * from book where book_name like '%YTHO%';
可以发现小写的数据也被搜索出来,如果我们希望强制区分大小写,也就是搜索的是小写字母就返回小写字母,搜索的是大写就返回大写,可以加上 binary 参数:
select * from book where binary book_name like '%YTHON%';
2、_
_ 这个字符也可用于模糊搜索,但是它只能匹配一个字符,接下来我们插入几条数据:
insert into book (book_name, author) values('test', 'test_author'), ('sest', 'sest_author'), ('atest', 'atest_author');
然后这样搜索:
select * from book where book_name like '_est';
这样,book_name 为 test 和 sest 的数据就可以被搜索出来,值为 atest 的就不会,因为 _ 仅匹配一个任意字符。
灵光一现:一个下划线 _ 可以匹配一个字符,那么多个下划线 _ 呢,是不是可以匹配多个任意字符?
确实如此,不信我们可以尝试:
select * from book where book_name like '__st';
注意:
通配符的使用会使得查找的时间变长,能用更精确的限制条件就用其他的条件
不要把通配符放在搜索语句的开始处,可以把更精确的搜索条件尽量往左边放
如果一定要使用通配符,_ 和% 也是可以组合使用的,在限定字符长度方面有很大帮助。
来源:https://z6r.cn/81VXd3


猜你喜欢
- 前言:整型是MySQL中最常用的字段类型之一,通常用于存储整数,其中int是整型中最常用的,对于int类型你是否真正了解呢?本文会带你熟悉i
- 当今互联网时代,数据处理已经成为了一个非常重要的任务。而MySQL作为一款开源的关系型数据库,被广泛应用于各种场景。本篇博客将介绍如何使用P
- 1. 字符编码简介1.1. ASCIIASCII(American Standard Code for Information Interc
- 今天在打开sql server 的时候打不开。报了一个错误,然后我打开sql server配置管理器,就看到了如下图这个错误。然后就去网上搜
- 前言:在Vue项目中,当访问的页面路由不存在或错误时,页面显示为一片空白。然而,通常我们需要对访问url不存在或者错误的情况下添加默认的40
- 1. 线程的概念:线程,有时被称为轻量级进程(Lightweight Process,LWP),是程序执行流的最小单元。一个标准的线程由线程
- 【原文地址】 Tip/Trick: Supporting Full Screen Mode with Silverlight 【原文发表日期
- 前言 常用地图底图的绘制一般由Basemap或者cartopy模块完成,由于Basemap库是基于python2开发的一个模块,目前已经不开
- 1.解读tensorflow权重文件,透过 tf.train.NewCheckpointReader函数。2.reader.get_vari
- python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。得到当前工作目录,即当前Python脚本工作的目录路
- 下面小编给大家介绍基于js如何从一组数据中找到指定的单条数据。具体方法如下所示:在一般情况下,我们会要求后端在列表的时候输出一堆列表的JSO
- 在学习pygame模块过程中,我们可以通过使用 pygame模块实现很多功能性的东西,但是很多人应该没有利用pygame实现过雪花飘落的效果
- 知识点requestsparselreos环境 python3.8pycharm2021目标网址:https://mm.enter
- 如果直接在命令行中利用input和raw_input读入一个文件来处理,并且想要采用直接将文件拖入命令行来处理的方式,input方法可以直接
- 1、创建方法:方法一:create table TempTableName或select [字段1,字段2,...,] into TempT
- 今天来填坑, 昨天说playwright未必一定要使用pytest-playwright包。 它也可以和pyunit一起使用。那么今天,田辛
- 下载paramiko首先,我的windows系统上有python2和python3。使用下面命令切换到python3:activate py
- 出现原因:缺失相应的whl文件。解决办法:下载并安装对应的whl文件。提供一个whl文件的下载网址:http://www.lfd.uci.e
- SQL Server 客户端配置工具用于配置客户端的工具(除基于DOS操作系统的客户端工具以外),以便使它们可以成功地和SQL Server
- 目录输出算法操作封装的操作含时演化算符的分解QFT的分解总结概要输出算法操作首先介绍一个最基本的使用方法,就是使用ProjectQ来打印量子