前言

在这个大数据时代,我们都离不开对数据的增删改查,增加、删除、修改这些看似都是一步完成的事情,但是对于查询来说,好的查询SQL可以大大的减少系统内存运行时间,提高系统的反应速度。这里简单的介绍一下查询中的模糊查询。

内容

模糊查询语句格式为:

<span style="font-family:KaiTi_GB2312;font-size:18px;">--模糊查询格式如下:

select 字段 FROM 表 WHERE 某字段 LIKE 条件;</span>

1.
%:任意零个或多个字符

匹配任意类型和长度字符,表示中文的格式为(%%)

  • 单个字符限制:

For Example:

<span style="font-family:KaiTi_GB2312;font-size:18px;">SELECT * FROM T_USER WHERE USERNAME LIKE '%周%';</span>

将把T_USER表中的字段名为USERNAME中含有“周”的记录全部搜索出来。“周武王,童第周,周丽同”等

  • 多个字符无序查询:

For Example:

<span style="font-family:KaiTi_GB2312;font-size:18px;">SELECT * FROM T_USER WHERE USERNAME LIKE '%周%' ADN USERNAME LIST '%王%';</span>

将把T_USER表中的字段名为USERNAME中既含有“周”又含有“王”的记录全部搜索出来。“周王爷,王周大人”等。这里注意:这样写和关键字的前后位置无关。

  • 多个字符有序查询

For Example:

<span style="font-family:KaiTi_GB2312;font-size:18px;">SELECT * FROM T_USER WHERE USERNAME LIKE '%周%王%';</span>

将把T_USER表中的字段名为USERNAME中既含有“周”又含有“王”并且“周”在“王”的前面的记录全部搜索出。“周王爷”,此时“王周大人”就搜索不出来了。

2.
_:任意单个字符

  • 匹配单个任意字符,常用来限制表达式的字符长度。

For Example:

<span style="font-family:KaiTi_GB2312;font-size:18px;">SELECT * FROM T_USER WHERE USERNAME LIKE '_周_';</span>

此时限制查询记录为:三个字,中间为“周”的记录全部搜索出来。

<span style="font-family:KaiTi_GB2312;font-size:18px;">SELECT * FROM T_USER WHERE USERNAME LIKE '周__';</span>

此时显示查询记录为:三个字,开头为“周”的记录全部搜索出来。

3.
[ ]:表示括号内任意字符

  • 匹配括号中任意字符,通常指一个字符或者字符串的范围。

For Example:

<span style="font-family:KaiTi_GB2312;font-size:18px;">SELECT * FROM T_USER WHERE USERNAME LIKE '[周王李]一';</span>

此时查询记录为:“周一、王一、李一”(不是周王李一)

  • 特殊情况处理

如果“[ ]”内显示为连续的数字或者字母,可以略写范围即可。

For Example:

<span style="font-family:KaiTi_GB2312;font-size:18px;">SELECT * FROM T_USER WHERE USERNAME LIKE '周[1-3]';</span>

此时查询记录为:“周1、周2、周3”

4.
[^ ]:不存在括号内任意字符

  • 匹配除括号内的字符外的对象(匹配对象为指定字符以外的任一字符)
<span style="font-family:KaiTi_GB2312;font-size:18px;">SELECT * FROM T_USER WHERE USERNAME LIKE '周[^1-3]';</span>

此时查询记录为:“周4、周5、周6等除(周1、周2、周3)以外的对象。

小结

1、适合需求,适合程序的代码才是好代码。

2、技巧查询很好的符合了需求,提高了查询效率。

感谢您的宝贵时间~~~

SQL——模糊查询的更多相关文章

  1. 8.mybatis动态SQL模糊查询 (多参数查询,使用parameterType)

    多参数查询,使用parameterType.实例: 用户User[id, name, age] 1.mysql建表并插入数据 2.Java实体类 public class User { public ...

  2. sql模糊查询

    SQL 模糊查询 在进行数据库查询时,有完整查询和模糊查询之分. 一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: ...

  3. SQL模糊查询与删除多条语句复习

    string IDlist="1,2,3"; 批量删除数据 StringBuilder strsql=new StringBuilder(); strSql.Append(&quo ...

  4. SQL 模糊查询

    在进行数据库查询时,有完整查询和模糊查询之分.一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式:1,%:表示任意0个 ...

  5. SQL 模糊查询(like)

    在进行数据库查询时,有完整查询和模糊查询之分. SQL模糊查询,使用like比较字,加上SQL里的通配符,请参考以下: 1.LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadde ...

  6. [转]SQL 模糊查询

      在进行数据库查询时,有完整查询和模糊查询之分. 一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: 1,% :表 ...

  7. Jmeter中JDBC Request和BeanShell PostProcessor的结合使用(SQL模糊查询)

    [前言] 今天记录一下Jmeter中JDBC Request和BeanShell PostProcessor的结合使用的方法(SQL模糊查询) [步骤] 1.下载对应数据库的驱动包到jmeter安装目 ...

  8. SQL模糊查询条件的四种匹配模式

    执行数据库查询时,有完整查询和模糊查询之分. 一般模糊语句格式如下: SELECT 字段 FROM 表 WHERE 某字段 LIKE 条件 其中关于条件,SQL提供了四种匹配模式: 1.% :表示任意 ...

  9. 有关SQL模糊查询

    执行 数据库查询时,有完整查询和模糊查询之分. 一般模糊语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: 1,%:表示任意0个 ...

  10. 【转】SQL模糊查询

    在进行数据库查询时,有完整查询和模糊查询之分. 一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: 1,% :表示任 ...

随机推荐

  1. C#异步编程之浅谈Task

    上一篇讲到了.Net4.5新增的async和await关键字,其实async和await算是一组标记,真正实现异步操作的是Task新开的任务线程. 什么是Task Task是.Net4.0新增用来处理 ...

  2. Saiku_学习_03_Saiku+Kylin构建多维分析OLAP平台

    一.技术选型 参见:Saiku+Kylin多维分析平台探索 1.saiku Saiku 作为分析平台,提供可视化的操作,能方便的对数据进行查询.分析,并提供图形化显示 2.kylin Kylin 作为 ...

  3. 【构建二叉树】02根据中序和后序序列构造二叉树【Construct Binary Tree from Inorder and Postorder Traversal】

    我们都知道,已知中序和后序的序列是可以唯一确定一个二叉树的. 初始化时候二叉树为:================== 中序遍历序列,           ======O=========== 后序遍 ...

  4. I.MX6 USB Camera

    /************************************************************************* * I.MX6 USB Camera * 说明: ...

  5. [原]NYOJ-字符串替换-113

    大学生程序代写 /*http://acm.nyist.net/JudgeOnline/problem.php?pid=113 字符串替换 时间限制:3000 ms  |  内存限制:65535 KB  ...

  6. 基于v4l2 ffmpeg x264的视频远程监控(附上编译好的库文件)

    说明:主要是基于ghostyu网友整理的< arm mini2440 基于v4l2 ffmpeg x264的视频远程监控>.自己做了一遍,遇到不少问题,就整理记录下来. 1.平台 硬件:a ...

  7. 【JVM】java方法区

    java方法区[名词解析]        --->和java堆一样,方法区是一块所有线程共享的内存区域.        --->保存系统的类信息,比如,类的字段,方法,常量池等.      ...

  8. bzoj 4500: 矩阵 差分约束系统

    题目: Description 有一个n*m的矩阵,初始每个格子的权值都为0,可以对矩阵执行两种操作: 选择一行, 该行每个格子的权值加1或减1. 选择一列, 该列每个格子的权值加1或减1. 现在有K ...

  9. vue 常见的新增、编辑、查看公用同一个页面

    用vue开发经常会碰到,一个功能的新增.编辑.查看公用同一个页面,如果是页面暂且不提. 但是弹框,很多人会发现,如果是点击编辑,取消,再点新增,弹框上面是会有残留数据的,为什么会这样呢,因为在点编辑的 ...

  10. nodejs调试:node-inspector

    基于Chrome浏览器的调试器 既然我们可以通过V8的调试插件来调试,那是否也可以借用Chrome浏览器的JavaScript调试器来调试呢?node-inspector模块提供了这样一种可能.我们需 ...