oracle sql语言模糊查询--通配符like

oracle sql语言模糊查询–通配符like的使用教程详解 oracle在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些“很像…”的数据记录,以下是可使用的通配符: %   零或者多个字符 _    单一任何字符(下划线) \     特殊字符 oracle10g以上支持正则表达式的函数主要有下面四个: 1,REGEXP_LIKE :与LIKE的功能相似 2,REGEXP_INSTR :与INSTR的功能相似 3,REGEXP_SUBSTR :与SUBSTR的功能相似 4,REGEXP_REPLACE :与REPLACE的功能相似 POSIX 正则表达式由标准的元字符(metach 立即下载
oracle sql语言模糊查询--通配符like的使用教程
2009-02-19 15:56

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

在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些“很像...”的数据记录,以下是可使用的通配符:
%   零或者多个字符
_    单一任何字符(下划线)
/     特殊字符
[]     在某一范围内的字符,如[0-9]或者[aeth]
[^]    不在某范围内的字符,如[^0-9]或者[^aeth]

其中关于条件,SQL提供了四种匹配模式:

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,[ ]:表示括号内所列字符中的一个(类似正则表达式)。指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。

比如 SELECT * FROM [user] WHERE u_name LIKE '[张李王]三'
将找出“张三”、“李三”、“王三”(而不是“张李王三”);

如 [ ] 内有一系列字符(01234、abcde之类的)则可略写为“0-4”、“a-e”
SELECT * FROM [user] WHERE u_name LIKE '老[1-9]'
将找出“老1”、“老2”、……、“老9”;

4,[^ ] :表示不在括号所列之内的单个字符。其取值和 [] 相同,但它要求所匹配对象为指定字符以外的任一个字符。

比如 SELECT * FROM [user] WHERE u_name LIKE '[^张李王]三'
将找出不姓“张”、“李”、“王”的“赵三”、“孙三”等;

SELECT * FROM [user] WHERE u_name LIKE '老[^1-4]';
将排除“老1”到“老4”,寻找“老5”、“老6”、……

5,查询内容包含通配符时

由于通配符的缘故,导致我们查询特殊字符“%”、“_”、“[”的语句无法正常实现,而把特殊字符用“[ ]”括起便可正常查询。据此我们写出以下函数:


function sqlencode(str)
str=replace(str,"[","[[]") '此句一定要在最前
str=replace(str,"_","[_]")
str=replace(str,"%","[%]")
sqlencode=str
end function


在查询前将待查字符串先经该函数处理即可。

DRAM内存模拟持久化设备的方法 由于持久化内存介质NVM技术的发展,越来越多的科研工作者投身到NVM相关的研究当中。但由于目前工业界并没有推出广泛使用的NVM介质设备,所以科研工作都需要自己以现有的条件,模拟NVM设备使用场景。一个简单的方法是:通过修改DRAM模拟器,达到模拟NVM的目的(可以参考:DRAMSim2模拟器分析与应用)。更高端的方式是:在真实系统中,将内存划分出一块儿,用来模拟NVM设备(类似于传统的ramdis 阅读详情

相关推荐

【实战指南】OpenClaw 使用 Bird Skill 接入 X(Twitter)的终极省心方案:告别每次都要手动喂 Cookie 的痛苦

OpenClaw 使用 Bird Skill 接入 X(Twitter)的终极省心方案:告别每次都要手动喂 Cookie 的痛苦

hampeter的博客 1753

oracle通配符大全,Oracle常用通配符

用于where比较条件的有 : 等于:=、<、<=、>、>=、<> >,< : 大于,小于 > =.<=: 大于等于,小于等于 =:等于 !=,<>,^=:不等于 包含:in、not in exists、not exists 范围:between…and、not between…and 匹配测试:like、not like Null测试:is null、is not null 布尔链接:and、or、not Oracle通配符 : 在w

seeseeyoua的博客 9776

ZYNQ 使用AXI_BRAM实现PS与PL 数据交互数据交互

有时CPU需要与PL进行小批量的数据交换,可以通过Block RAM实现。通过Zynq 的GP Master 接口读写PL端的 BRAM,实现PS与PL的交互。加入自定义的 FPGA 程序,并利用 AXI4 总线进行配置,通知何时读写 BRAM。CPU通过 AXI BRAM Controller 读取 BRAM 数据,CPU 仅配置自定义的 PL BRAM Controller 的寄存器,不通过它读写数将BRAM与socket进行联合使用,将电脑的数据发到PS端,PS端放在PL端,PL端再发给PS端,P据。

wangjie36的博客 1万+

oracle通配符大全

要想关闭这个特性,可以运行以下的命令: set define off ,这是一个SQLplus命令,不是一个SQL命令。双引号("):在Oracle中,单双引号含义不同。撇号('):在Oracle中,撇号也可以写成彼此相邻的两个单引号。星号(*):select *意味着选择所有的列,count(*)意味着计算所有的行,表示通配符时,表示0个或任意多个字符。单引号('):在Oracle中,应该只使用单引号将文本和字符和日期括起来,不能使用引号(包括单双引号)将数字括起来。(问号): 用来表示确切的未知字符。

2401_82817136的博客 557

Oracle的charlist通配符,SQL 通配符

通配符SQL LIKE 操作符一起使用。SQL 通配符用于搜索表中的数据。选取 url 以字母 "https" 开始的所有网站:SELECT * FROM WebsitesWHERE url LIKE 'https%';选取 name 以 "G" 开始,然后是一个任意字符,然后是 "o",然后是一个任意字符,然后是 "le" 的所有网站:SELECT * FROM WebsitesWHERE ...

weixin_42134054的博客 958

Oracle-19-like运算符&转义操作符

一、LIKE比较运算符 LIKE比较运算符也可以称为通配符LIKE运算符可以使用以下两个通配符“%”和“_”,其中“%”代表零个或多个字符,“_”代表一个且只能是一个字符。   比如:如果您只记得SALESMAN的第一个字符为S,第三个字符为L,第五个字符为S,那么查询语句该怎么写? SQL>selectempno, ename, sal, job from emp wherejob

wy_0928的博客 1万+

Oracle SQL查询:特殊字符的转义技巧

这就像是你和Oracle SQL间的独特语言Oracle SQL明白,当遇到你指定的转义字符后,接下来的字符应当被何种方式处理。在Oracle SQL中,特殊字符的转义是一个常见需求。这通常在以字符串形式处理查询语句时会遇到,例如像百分号 "%",下划线 "_"等都是SQL语句中的特殊字符。当这个字符出现在查询字符串中时,Oracle会知道我们想查询的是其后的特殊字符,而非将其作为一个通配符来处理。现在,如果你想要查询一个同时包含 "%" 和 "_" 的职位,你或许以为事情会变复杂,但事实并不是这样。

高性价比服务器就选:蓝易云 1922

oraclesql like查询,oracle sql语言模糊查询--通配符like的使用教程详解

oracle在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些“很像...”的数据记录,以下是可使用的通配符:% 零或者多个字符_ 单一任何字符(下划线)\ 特殊字符oracle10g以上支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与INSTR的...

weixin_42330839的博客 2178

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

oracle在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些“很像...”的数据记录,以下是可使用的通配符:% 零或者多个字符_ 单一任何字符(下划线)\ 特殊字符oracle10g以上支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与INSTR的功能相似3,R...

weixin_39886238的博客 1148

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

关于like后面的条件,Oracle提供了四种匹配模式: 1,% :表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE '%三%' 将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。 另外,如果需要找出u_name中既有“...

qijunran的博客 1593

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

oracle在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些“很像...”的数据记录,以下是可使用的通配符:%   零或者多个字符_    单一任何字符(下划线)\     特殊字符 oracle10g以上支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与INSTR...

weixin_39214481的博客 1052

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

1.like通配符Oracle在where子句中,可以对datetime、char、varchar字段类型的列,用Like子句配合通配符选取那些“很像...”的数据记录。 以下是可使用的通配符: %   零或者多个字符 _    单一任何字符(下划线) \     特殊字符   2.  正则表达式: 2.1 相关函数: Oracle10g以上支持正则表达式的函数主要有下面四

秋溪谷里梦渔翁 1663

oracle sql语言like模糊查询–通配符

在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些"很像…"的数据记录,以下是可使用的通配符:     %零或者多个字符     _单一任何字符(下划线)     \特殊字符     []在某一范围内的字符,如[0-9]或者[aeth]     [^]不在某范围内的字符,如[^0-9]或者[^aeth]

Do、IT的专栏 750
上一篇: Java String To Date 字符串转时间
下一篇: WebMethods 第一次亲密接触
sufuchao
博客等级 码龄16年 3粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值