关于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:]]');

转载于:https://www.cnblogs.com/hqbhonker/p/3328418.html

Oracle sql语言模糊查询--like后面的通配符相关推荐

  1. oracle数字通配符,oracle sql语言模糊查询--通配符like的使用

     oracle在Where子句中,可以对datetime.char.varchar字段类型的列用Like子句配合通配符选取那些"很像..."的数据记录,以下是可使用的通配符: ...

  2. oracle sql语言模糊查询--通配符like的使用教程

    在Where子句中,可以对datetime.char.varchar字段类型的列用Like子句配合通配符选取那些"很像..."的数据记录,以下是可使用的通配符: %   零或者多个 ...

  3. SQL Fundamentals || Oracle SQL语言

    对于SQL语言,有两个组成部分: DML(data manipulation language) 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据 ...

  4. oracle入门语,Oracle SQL 语言从入门到精通

    Oracle SQL 语言从入门到精通 作者:网络 佚名 2005-10-27 00:00 评论 分享 [IT168 服务器学院]数据库对象包括表.视图.索引.同义词.簇.触发器.函数.过程.包.数据 ...

  5. 如何使用SQL进行模糊查询

    SQL语句--模糊查询 执行数据库查询时,有完整查询和模糊查询之分. 一般模糊语句格式如下: SELECT 字段 FROM 表 WHERE 某字段 LIKE 条件; 其中,关于条件,SQL提供了四种匹 ...

  6. [推荐推荐][提供下载]ORACLE SQL:经典查询练手系列文章收尾(目录篇)

    [推荐推荐][提供下载]ORACLE SQL: 经典查询练手系列文章收尾(目录篇) --通过知识共享树立个人品牌. 通过近一个月的努力,<经典查询练手系列>也快告一段落,但并不代表结束,以 ...

  7. [推荐]ORACLE SQL:经典查询练手第三篇(不懂装懂,永世饭桶!)

    [推荐]ORACLE SQL:经典查询练手第三篇(不懂装懂,永世饭桶!) [推荐]ORACLE SQL: 经典查询练手第三篇(不懂装懂,永世饭桶!) --通过知识共享树立个人品牌. 本文与大家共同讨论 ...

  8. Mybatis映射文件SQL语句模糊查询,#和$的区别和注意事项

    Mybatis映射文件SQL语句模糊查询 1. "%"#{value}"%" 在参数中不需要添加 %_ 推荐使用 2. '%${value}%' 在参数中不需要 ...

  9. java的sql的like_[Java教程]SQL like 模糊查询, in

    [Java教程]SQL like 模糊查询, in 0 2018-09-14 11:00:38 ​[{"互联网":["网络媒体","微博", ...

最新文章

  1. Java 正则表达式使用详解
  2. UIControlEvents的几种类型值
  3. codesmith用access的mdb文件作数据源的模板引用
  4. centos 7 ldap php7,centOS更新php7
  5. 远程服务器,你不得不知道的命令行操作(一)
  6. 网格布局(Grid Layout)
  7. [jzoj 4528] [GDOI2019模拟2019.3.26] 要换换名字 (最大权闭合子图)
  8. 解决台式机外放和插耳机都没声音[基础版]
  9. 群晖nas存储系统原理_一篇看懂黑群晖重装系统
  10. MySQL 8.0中的新增功能
  11. 正规简单租房合同样板word电子版百度云下载房屋租赁
  12. mac电脑怎么清空浏览器缓存?Chrome浏览器 for Mac清理缓存的方法
  13. 公司知识库的搭建步骤
  14. LogSeq 表格合并单元格
  15. CentOS7通过SpeedTest工具网络测速
  16. 7、C语言回调函数使用
  17. 数学回味系列之19 - 有趣的数字
  18. WorldFirst能用于PayPal提现吗?怎么操作?
  19. USACO 1.4 Mother's Milk 母亲的牛奶(经典的dfs倒水问题)
  20. python堆栈溢出的原因_堆栈溢出一般是什么原因?

热门文章

  1. 杭电1276:士兵队列训练问题
  2. 通过html打开本地exe
  3. 大宝大话大数据(一) ——大数据的整体框架
  4. 谷歌翻译不用代理可用的免费api python版本亲测可用
  5. 【框架学习】Struts2(一)工作原理
  6. 数学基础task07 多元微分学
  7. C语言笔记(1.3版本,目前3.5w字)----未完待续
  8. maven 排除某个类_Maven依赖排除的问题和答案
  9. 天津二级计算机考试地点,2016年9月天津计算机一级二级三级四级考点地址电话...
  10. ABB机器人负载测算评估方法