zoukankan      html  css  js  c++  java
  • Oracle sql语言模糊查询--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:]]');

  • 相关阅读:
    argparse模块的使用
    tf.stack() /tf.unstack()
    什么是tensor
    tf.size()函数
    tf.nn.l2_loss()的用法
    CNN中的卷积
    tf.reverse()
    学习音视频编程技术 博客
    shell 批量计算MD5值
    线程池的实现
  • 原文地址:https://www.cnblogs.com/hqbhonker/p/3328418.html
Copyright © 2011-2022 走看看