zoukankan      html  css  js  c++  java
  • MySQL ---- 过滤数据 通配符 like (七)

    like操作符:对于未知的进行搜索,结合通配符使用

    通配符(wildcard): 用来匹配值得一部分的特殊字符

    搜索模式(search pattern):由字面值、统配符或两者组合的搜索模式

    注意:

      1、通配符本身是SQL 的WHERE 子句有特殊含义的字符,常见的有百分号(%)通配符 和下划线(_)通配符。

      2、在使用通配符时必须使用like 操作符,like后跟的搜索模式利用通配符进行匹配

      3、操作符在作为谓词(predicat)时,不是操作符,从技术上讲Like 是谓词不是操作符

    one、百分号(%)通配符: 表示任何字符出现任意次数,就是可以代表多个单词

    %放在最后时

    -- 检索商品名是 jet开头的商品
    select prod_id,prod_name,prod_price from products where prod_name like 'jet%' order by prod_price;

     放在两端时,匹配位置包含 ton 文本的值,不论之前或之后出现 什么字符

    -- 检索商品名中 有ton 的商品
    select prod_id,prod_name,prod_price from products where prod_name like '%ton%' order by prod_price;

     放在中间

    -- 检索商品名以2 开头 l  结尾的商品
    select prod_id,prod_name,prod_price from products where prod_name like '2%l' order by prod_price;

     注意:

      1、除了一个或多个字符外,%还能匹配0个字符

      2、尾空格可能会干扰通配符的匹配,因为空格也属于字符,空白字符

      3、%通配符匹配不了NULL

    two、下划线(_)通配符:只匹配单个字符

    -- 商品名首字母忘了,但是知道后面的
    select prod_id,prod_name,prod_price from products where prod_name like '_ ton anvil';

     

     百分号(%)是可以匹配0个到多个字符的,下划线只能匹配一个

     注意: 通配符的搜索处理比其他的搜索所花的时间更长,所以

        1、不要过度使用通配符,如果通过其他操作符可以查到,尽量不用通配符

      2、使用的话,也要注意不要把通配符放到开始处,这样搜索是最慢的

      3、注意放置的位置,放错位置的话,返回的可能不是你想要的

      

  • 相关阅读:
    ASP.NET WebAPI2 发布之后404 Not Found
    WPF MVVM TreeView 实现 右键选中 右键菜单
    Asp.Net MVC4+EF6 Code First 权限管理系统 源码下载
    C# Winform DataGrid 绑定List<> Or ObservableCollection<> 类型无法自动刷新问题
    VMWare 安装时报错 tools-windows.msi failed报错解决办法
    HashMap 扩容机制
    POI解析Excel封装工具
    poi API
    简单echars说明和使用
    比较运算符compareTo()、equals()、==之间的区别
  • 原文地址:https://www.cnblogs.com/obge/p/12938194.html
Copyright © 2011-2022 走看看