SQL——模糊查询

前言

    在这个大数据时代,我们都离不开对数据的增删改查,增加、删除、修改这些看似都是一步完成的事情,但是对于查询来说,好的查询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、技巧查询很好的符合了需求,提高了查询效率。


感谢您的宝贵时间~~~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 31
    评论
评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

女汉纸一枚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值