• 走向DBA[MSSQL篇] 积跬步行千里


    不知道大家对SQL系列的感不感兴趣 先在这里探个路 本文针对的读者为SQL菜鸟 欢迎大牛驳论或者补充

    既然是探路篇 就先说下数据过滤中的偏门匹配 希望能给大家带来收获

    create table 虫子的临时表
    (
       编号 varchar(30),
       名称 varchar(30),
       备注 varchar(100)
    )
    insert into 虫子的临时表 values('编号01','name01','这是一个奇迹')
    insert into 虫子的临时表 values('编号02','name02','这是一个神话')
    insert into 虫子的临时表 values('编号039','name039','这是一个扯谈')
    
    -- %大家都懂的
    select * from 虫子的临时表 where 编号 like '%编号%'
    -- 使用‘_’匹配任意字符
    select * from 虫子的临时表 where 编号 like '编号0_'
    -- 使用‘_’匹配任意字符 但是只能匹配任意单个字符
    select * from 虫子的临时表 where 编号 like '编号_'
    -- 使用‘_’匹配任意字符 但是只能匹配任意单个字符 如果要表示2个字符可以用‘__’
    select * from 虫子的临时表 where 编号 like '编号__'
    
    drop table 虫子的临时表
    

     “_”通配符功能和“%”相似,只是“_”表示任意单个字符,且该字符只能匹配一个字符。

    create table 虫子的临时表
    (
       昵称 varchar(30),
       座位号 int,
       备注 varchar(100)
    )
    insert into 虫子的临时表 values('和谐',15,'这是一个奇迹')
    insert into 虫子的临时表 values('特色社会主义',29,'这是一个神话')
    insert into 虫子的临时表 values('%#¥',31,'这是一个扯谈')
    insert into 虫子的临时表 values('Qg%Q',31,'这是一个扯谈')
    -- '[]'匹配某一范围内的字符
    select * from 虫子的临时表 where 座位号 like '[1-2][1-9]'
    -- '[^]'匹配非某一范围内的字符
    select * from 虫子的临时表 where 座位号 like '[^1-2]_'
    -- 匹配特殊字符
    select * from 虫子的临时表 where 昵称 like '%[%#]%'
    -- 在模式查询中使用转义符escape
    select * from 虫子的临时表 where 昵称 like '%g%%' escape '/'
    drop table 虫子的临时表
    

    “[]”通配符用于指定一系列的字符,只要满足这些字符其中之一,且位置出现在“[]”通配符的位置的字符串就满足查询条件。“[^]”来排除指定数据。like关键字可以与“[]”通配符组合来匹配特殊字符也可以使用escape关键字和转义符来实现。

    下一章节和大家详细介绍下游标。

  • 相关阅读:
    【大数据】HDFS高可用
    【Redis】常用命令、问题排查、内存优化
    【OOM】记一次线上OOM解决全流程
    【Git】Github如何弥补提交记录contributions
    Hash算法与Hash碰撞
    【计算机基础】存储单位换算
    【大数据】技术选型对比
    【MQ】Kafka架构与原理
    【Git】Git常用命令合集
    【maven】基本知识点
  • 原文地址:https://www.cnblogs.com/dubing/p/2224519.html
Copyright © 2020-2023  润新知