mysql正则查询 模糊查询
-- ==============正则查询================
/*
SQL默认是忽略大小写的
正则模式使用REGEXP和NOT REGEXP操作符(或RLIKE和NOT RLIKE,它们是同义词)。正则即字段值包含正则的内容即可
. 匹配任何单个的字符,表示任意单字符
[...] 匹配包含方括号内某单个字符的字符串,[0-9]匹配0到9之间的某个数字
* 匹配零个或多个在它前面的字符
{n} 匹配n个在它前面的字符 如果希望大小写都匹配上可以这样写。[aA] 匹配大小写的 a,[a-zA-Z] 则匹配大小写的任何 a-z 单个字母。
但默认是不区分大小写的 [b] 也可匹配上还有 B 的字符串
要匹配的字符在字段起始处,使用 ^ ,在字段的结尾用 $
如果是中文字符,可能在使用时需要注意一下。 */
-- 字段name只有四个值,name_aA ,name_aB , name_人人 ,name_%好好_ SELECT * FROM `test_t` WHERE NAME REGEXP '[a-z]'; -- 包含a到z某个字符的字符串,能匹配到 name_aA 和 name_aB 和 name_人人 和 name_%好好_ SELECT * FROM `test_t` WHERE NAME REGEXP '^n.....b$'; -- 以n开头B结尾,7个字符长度的字符串,能匹配到 name_aB SELECT * FROM `test_t` WHERE NAME RLIKE 'd*'; -- 包含0个或多个d的字符串,能匹配到该字段的所有值,因为 * 前的字符0个也匹配 SELECT * FROM `test_t` WHERE NAME RLIKE 'B{1}$'; -- 结尾是一个B,能匹配到name_aB -- ==============模糊查询================
-- MySql的like语句中的通配符:百分号、下划线和escape -- % 表示任意个或多个任意字符。可匹配任意类型和长度的字符。 SELECT * FROM `test_t` WHERE NAME LIKE '%me_aB'; -- 查询结果 name_aB -- 如果需要找出 name 中既有 b 又有 a 的记录,使用 and 条件
SELECT * FROM `test_t` WHERE NAME LIKE '%b%' AND NAME LIKE '%a%';
-- 若使用 SELECT * FROM `test_t` WHERE NAME LIKE '%b%a%'; 则找不到 name_aB -- _ 表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句(可以代表一个中文字符) SELECT * FROM `test_t` WHERE NAME LIKE '_______'; -- 能查询到 name_aA 和 name_aB 还有 name_人人 这7个字符长度的值 -- 如果要查字符 % 或者 _ 使用 ESCAPE,转义字符后面的 % 或 _ 就不作为通配符了,注意前面没有转义字符的%和_仍然起通配符作用
SELECT * FROM `test_t` WHERE NAME LIKE 'name_/%%好/_' ESCAPE '/'; -- 查询结果 name_%好好_
mysql正则查询 模糊查询的更多相关文章
- mysql中的模糊查询
转载自:http://www.letuknowit.com/archives/90/ MySQL中实现模糊查询有2种方式:一是用LIKE/NOT LIKE,二是用REGEXP/NOT REGEXP(或 ...
- PHP MYSQL登陆和模糊查询
PHP MYSQL登陆和模糊查询 PHP版本 5.5.12 MYSQL版本 5.6.17 Apache 2.4.9 用的wampserver 一.PHPMYSQL实现登陆: 一共含有两个 ...
- MySQL中的模糊查询和通配符转义
MySQL中实现模糊查询有2种方式:一是用LIKE/NOT LIKE,二是用REGEXP/NOT REGEXP(或RLIKE/NOT RLIKE,它们是同义词). 第一种是标准的SQL模式匹配.它有2 ...
- MySQL中的模糊查询 like 和 Oracle中的 instr() 函数有同样的查询效果
注:MySQL中的模糊查询 like 和 Oracle中的 instr() 函数有同样的查询效果: 如下所示: MySQL: select * from tableName where name li ...
- 使用mybatis从mysql里进行模糊查询的编码问题
关于这个问题,记录下我的解决方法,希望对有同样困惑的朋友,有所帮助. 问题描述: 我在做mybatis从mysql里模糊查询时,如果模糊的关键词是字母的话,可以查出来.如果模糊的关键词是汉字的话,查不 ...
- mysql进阶(六)模糊查询的四种用法介绍
mysql中模糊查询的四种用法介绍 这篇文章主要介绍了mysql中模糊查询的四种用法,需要的朋友可以参考下. 下面介绍mysql中模糊查询的四种用法: 1 %: 表示任意0个或多个字符.可匹配任意类型 ...
- python中的mysql数据库like模糊查询
%在python中是个特殊的符号,如%s,%d分别代表了字符串占位符和数字占位符. 大家知道,mysql的模糊查询也需要用到%. 所以,可以先把需要查的字符串抽出来,再以参数方式传入. args = ...
- mysql通配符进行模糊查询
在mysql数据库中,当我们需要模糊查询的时候 ,我们会使用到通配符. 首先我们来了解一下2个概念,一个是操作符,一个是通配符. 操作符 like就是SQL语句中的操作符,它的作用是指示在SQL语句后 ...
- elasticsearch 7.x 如何满足mysql中的模糊查询功能(like)
业务场景:筛选项原功能是用mysql左模糊进行过滤查询,现业务要用es,怎么样才能满足原功能,又不损性能. elasticsearch中有关于模糊查询的操作:wildcard 文档:https://b ...
随机推荐
- Eclipse 反编译插件
很多时候在项目开发中,没有源码是挺痛苦的一件事情,我们要知其然,更要知其所以然,但是有些公司就是不提供源码,怎么办? 不怕,下面教大家在Eclipse下安装反编译插件,方便好用. 好了,点 点 点 都 ...
- 重构改善既有代码设计--重构手法11:Move Field (搬移字段)
你的程序中,某个字段被其所驻类之外的另一个类更多的用到.在目标类建立一个新字段,修改源字段的所有用户,令它们改用新字段. 动机:在类之间移动状态和行为,是重构过程中必不可少的措施.随着系 ...
- 使用FormData提交表单及上传文件
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head ...
- vista风格的cms企业html后台管理系统模板——后台
链接:http://pan.baidu.com/s/1c1Cv99e 密码:20yz
- 【zTree】zTree的3.5.26静态树与动态树(实用)
1.静态树: 目录结构:(css与js为下载的原文件夹)
- vim 颜色主题设置
先看看vim编辑器提供的色彩配置方案: 首先进入vim的color目录(/usr/share/vim/vim74/colors,不同的系统目录不同,建议在-/建立.vim目录,然后在些目录里建立对应的 ...
- 24 - 面向对象基础-多继承-super-mro-Mixin
目录 1 类的继承 2 不同版本的类 3 基本概念 4 特殊属性和方法 5 继承中的访问控制 6 方法的重写(override) 6.1 super 6.2 继承中的初始化 7 多继承 7.1 多继承 ...
- numpy 简介
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...
- Android设备相关配置
http://source.android.com/devices/tech/storage/index.html Android supports devices with external sto ...
- 保护眼睛(改变窗口颜色和Pdf背景颜色)
保护眼睛(改变窗口颜色和Pdf背景颜色) 昨天用了一个好朋友告诉我的保护眼睛的方法,效果很不错哦-- 今天告诉大家,一起爱护偶们明亮的眼睛吧!!! 首先需要改一下设置,如果常常用电脑很容易 ...