zoukankan      html  css  js  c++  java
  • Oracle like 里面的通配符 以及regexp_like

    关于like后面的条件,Oracle提供了四种匹配模式:

    1,% :表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。

    比如 SELECT * FROM [user] WHERE u_name LIKE '%三%'

    将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。

    另外,如果需要找出u_name中既有“三”又有“猫”的记录,请使用and条件
    SELECT * FROM [user] WHERE u_name LIKE '%三%' AND u_name LIKE '%猫%'

    若使用 SELECT * FROM [user] WHERE u_name LIKE '%三%猫%' 
    虽然能搜索出“三脚猫”,但不能搜索出符合条件的“张猫三”。

    2,_ : 表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:

    比如 SELECT * FROM [user] WHERE u_name LIKE '_三_'
    只找出“唐三藏”这样u_name为三个字且中间一个字是“三”的;

    再比如 SELECT * FROM [user] WHERE u_name LIKE '三__';
    只找出“三脚猫”这样name为三个字且第一个字是“三”的;

    3. regexp_like 正则表达式函数查询


    --查询FieldName中以1开头60结束的记录并且长度是7位
    select * from fzq where FieldName like '1____60';
    select * from fzq where regexp_like(FieldName,'1....60');


    --查询FieldName中以1开头60结束的记录并且长度是7位并且全部是数字的记录。
    --使用like就不是很好实现了。
    select * from fzq where regexp_like(FieldName,'1[0-9]{4}60');


    -- 也可以这样实现,使用字符集。
    select * from fzq where regexp_like(FieldName,'1[[:digit:]]{4}60');


    -- 查询FieldName中不是纯数字的记录
    select * from fzq where not regexp_like(FieldName,'^[[:digit:]]+$');


    -- 查询FieldName中不包含任何数字的记录。
    select * from fzq where regexp_like(FieldName,'^[^[:digit:]]+$');


    --查询以12或者1b开头的记录.不区分大小写。
    select * from fzq where regexp_like(FieldName,'^1[2b]','i');


    --查询以12或者1b开头的记录.区分大小写。
    select * from fzq where regexp_like(FieldName,'^1[2B]');


    -- 查询数据中包含空白的记录。
    select * from fzq where regexp_like(FieldName,'[[:space:]]');


    --查询所有包含小写字母或者数字的记录。
    select * from fzq where regexp_like(FieldName,'^([a-z]+|[0-9]+)$');


    --查询任何包含标点符号的记录。
    select * from fzq where regexp_like(FieldName,'[[:punct:]]');

  • 相关阅读:
    WCF步步为营(三):使用配置文件改变使用服务的方式
    WCF步步为营(五):数据契约
    弹性工作制下的IT项目管理
    C#拾遗系列(8):异常
    WCF步步为营(一):简单示例
    敏捷的 "道"
    从中国男足看项目管理
    WCF步步为营(二):使用配置文件改变发布服务的方式
    WCF步步为营(四):客户端使用代理类使用服务
    C#拾遗系列(9):继承、接口、扩展方法、分部类、类操作、Ref and Out、可空类型
  • 原文地址:https://www.cnblogs.com/kakaisgood/p/9561177.html
Copyright © 2011-2022 走看看