MySQL--用通配符进行过滤(LIKE操作符)
1、LIKE操作符
怎样搜索产品名中包含文本anvil的所有产品?用简单的比较操作符肯定不行,必须使用通配符。利用通配符可创建比较特定数据的搜索模式。在这个例子中,如果你想找出名称包含anvil的所有产品,可构造一个通配符搜索模式,找出产品名中任何位置出现anvil的产品。
通配符( wildcard) 用来匹配值的一部分的特殊字符。
搜索模式( search pattern) 由字面值、通配符或两者组合构成的搜索条件。
通配符本身实际是SQL的WHERE子句中有特殊含义的字符, SQL支持几种通配符。
为在搜索子句中使用通配符,必须使用LIKE操作符。 LIKE指示MySQL,后跟的搜索模式利用通配符匹配而不是直接相等匹配进行比较。
1.1 百分号(%)通配符
最常使用的通配符是百分号( %)。在搜索串中, %表示任何字符出现任意次数。
1.1.1 使用单个百分号通配符
SELECT prod_id,prod_name
FROM products
WHERE prod_name LIKE 'jet%';
此例子使用了搜索模式'jet%'。在执行这条子句时,将检索任意以jet起头的词。 %告诉MySQL接受jet之后的任意字符,不
管它有多少字符。
1.1.2 使用多个百分号通配符
通配符可在搜索模式中任意位置使用,并且可以使用多个通配符。
下面的例子使用两个通配符,它们位于模式的两端:
SELECT prod_id,prod_name
FROM products
WHERE prod_name LIKE '%anvil%';
搜索模式'%anvil%'表示匹配任何位置包含文本anvil的值,而不论它之前或之后出现什么字符。
1.1.3 通配符在搜索模式中间(不常用)
通配符也可以出现在搜索模式的中间,虽然这样做不太有用。下面的例子找出以s起头以e结尾的所有产品:
SELECT prod_name
FROM products
WHERE prod_name LIKE 's%e';
1.2 下划线(_)通配符
下划线的用途与%一样,但下划线只匹配单个字符而不是多个字符。
SELECT prod_id,prod_name
FROM products
WHERE prod_name LIKE '_ton anvil';
此WHERE子句中的搜索模式给出了后面跟有文本的两个通配符。结果只显示匹配搜索模式的行:第一行中下划线匹配1,
第二行中匹配2。 .5 ton anvil产品没有匹配,因为搜索模式要求匹配两个通配符而不是一个。
2、使用通配符的技巧
①不要过度使用通配符。如果其他操作符能达到相同的目的,应该使用其他操作符。
②在确实需要使用通配符时,除非绝对有必要,否则不要把它们用在搜索模式的开始处。把通配符置于搜索模式的开始处,搜索起来是最慢的。
③仔细注意通配符的位置。如果放错地方,可能不会返回想要的数据。
总之,通配符是一种极重要和有用的搜索工具,以后我们经常会用到它。
MySQL--用通配符进行过滤(LIKE操作符)的更多相关文章
- mysql必知必会--用通配符进行过滤
LIKE 操作符 前面介绍的所有操作符都是针对已知值进行过滤的.不管是匹配一 个还是多个值,测试大于还是小于已知值,或者检查某个范围的值,共 同点是过滤中使用的值都是已知的.但是,这种过滤方法并不是任 ...
- 7.MySQL必知必会之用通配符进行过滤-like
用通配符进行过滤-like 1. like操作符 先说两个概念:
- RxJava【过滤】操作符 filter distinct throttle take skip first MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 5.用通配符进行过滤 ---SQL
一.LIKE操作符 通配符(wildcard) 用来匹配值的一部分的特殊字符.搜索模式(search pattern)由字面值.通配符或两者组合构成的搜索条件.通配符本身实际上是SQL的WHERE子句 ...
- mysql LIKE通配符 语法
mysql LIKE通配符 语法 作用:用于在 WHERE 子句中搜索列中的指定模式.惠州大理石平板 语法:SELECT column_name(s) FROM table_name WHERE co ...
- MySQL主从复制_复制过滤
关于主从过滤,建议只在从服务器做设定,在Master 端为保证二进制日志的完整, 不建议使用二进制日志过滤. Master 可用参数: binlog-do-db= #定义白名单,仅将制定数据库的相关操 ...
- 读书笔记--SQL必知必会06--用通配符进行过滤
6.1 LIKE操作符 通配符(wildcard),用来匹配某些值的的特殊字符. 在搜索子句中必须通过LIKE操作符使用通配符. 通配符搜索只能用于文本字段(字符串),非文本数据类型字段不能使用通配符 ...
- MySql——使用where子句过滤数据
示例使用的数据表在上一个博客中创建的https://www.cnblogs.com/lbhym/p/11895968.html 参考资料:<Mysql必知必会> 1.使用where子句 示 ...
- mysql : 使用不等于过滤null的问题
在写sql时遇到查询结果不对的情况,经查阅,发现是因为查询条件过滤null的问题:从网上找到如下资料: 在写SQL 条件语句是经常用到 不等于‘!=’的筛选条件,此时要注意此条件会将字段为null的数 ...
随机推荐
- netty系列之:netty中的frame解码器
目录 简介 LineBasedFrameDecoder DelimiterBasedFrameDecoder FixedLengthFrameDecoder LengthFieldBasedFrame ...
- centos 7.0 下安装FFmpeg软件 过程
这几天由于需要编写一个语音识别功能,用到了百度语音识别接口,从web端或小程序端传上来的音频文件是aac或者mp3或者wav格式的,需要使用FFmpeg进行格式转换,以符合百度api的要求. 安装FF ...
- 团队Arpha1
队名:观光队 组长博客 作业博客 组员实践情况 王耀鑫 **过去两天完成了哪些任务 ** 文字/口头描述 完成服务器连接数据库部分代码 展示GitHub当日代码/文档签入记录 接下来的计划 与服务器连 ...
- 1.sprng 简介
容器(可以用来管理所有的组件(类)) 核心关注:IOC和AOP 1.IOC Inversion(反转) Of Control:控制反转 控制:资源的获取方式 1.主动式(要什么资源自己创建) Pers ...
- URL 是什么?
URL 是什么? 本文写于 2020 年 5 月 16 日 URL 是什么?天天听到人家说到这个名词,那它到底是什么? URL 是统一资源定位符,Uniform Resource Locator. 俗 ...
- js通用对象数组冒泡排序
数组对象通用 function sort(data, sortFiled, orderby) { var result = data, temp; for (var i = 0; i < res ...
- 929. Unique Email Address - LeetCode
Question 929. Unique Email Address Solution 题目大意: 给你一个邮箱地址的数组,求出有多少个不同的地址,其中localName有如下规则 加号(+)后面的字 ...
- 个人冲刺(七)——体温上报app(二阶段)
冲刺任务:完成特殊情况功能 MoreActivity.java package com.example.helloworld; import android.content.Intent; impor ...
- 类型安全的 Go HTTP 请求
前言 对 Gopher 来说,虽然我们基本都是在写代码让别人来请求,但是有时候,我们也需要去请求第三方提供的 RESTful 接口,这个时候,我们才能感受到前端同学拼接 HTTP 请求参数的痛苦. 比 ...
- 如何在 pyqt 中自定义工具提示 ToolTip
前言 Qt 自带的工具提示样式不太好看,就算加了样式表也时不时会失效,同时工具提示没有阴影,看起来就更难受了.所以本篇博客将会介绍自定义工具提示的方法,效果如下图所示: 实现过程 工具提示其实就是一个 ...