oracle sql语言模糊查询–通配符oracle sql语言模糊查询–通配符
在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_nameL I KE '%猫%'
若使用SELECT * FROM [user] WHERE u_name LIKE '%三%猫%'
虽然能搜索出"三脚猫",但不能搜索出符合条件的"张猫三".
2,_:表示任意单个字符。匹配单个任意字符它常用来限制表达式的字符长度语句
比如SELECT * FROM [user] WHERE u_name LIKE '_三_'
只找出"唐三藏"这样u_name为三个字且中间一个字是"三"的
再比如SELECT * FROM [user] WHERE u_name LIKE '三__' ;
只找出"三脚猫"这样n ame为三个字且第一个字是"三"的
3, [ ] :表示括号内所列字符中的一个类似正则表达式 。指定一个字符、字符串或范围要求所匹配对象为它们中的任一个。
比如SELECT * FROM [user] WHERE u_name LIKE ' [张李王]三'
将找出"张三"、 "李三"、 "王三" 而不是"张李王三"
如[ ] 内有一系列字符01234、 abcde之类的则可略写为"
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,查询内容包含通配符时
由于通配符的缘故导致我们查询特殊字符"%"、 "_"、 "["的语句无法正常实现而把特殊字符用"[ ]"括起便可正常查询。据此我们写出以下函数
///
///处理查询条件
///
///
查询条件
/// stringpublic static string DealSqlQuery string queryCondition{string returnString=queryCondition;returnString=returnString.Replace "[", "[ []" //此句一定要在最前returnString=returnString.Replace "_", "[_]" returnString=returnString.Replace "%", "[%]" return returnString;
}
在查询前将待查字符串先经该函数处理即可。
GreenCloudVPS最近在新加坡DC2节点上了新机器,Dual Xeon Silver 4216 CPU,DDR4内存,10Gbps网络端口,推出了几款大硬盘VPS套餐,基于KVM架构,500GB磁盘起年付30美元。除了大硬盘套餐外,还加推了几款采用NVMe硬盘的常规套餐,最低年付20美元。不过需要提醒的是,机房非直连中国,尤其是电信用户ping值感人,包括新加坡DC1也是如此。大硬盘VPS...
wordpress高级全行业大气外贸主题,wordpress通用全行业高级外贸企业在线询单自适应主题建站程序,完善的外贸企业建站功能模块 + 高效通用的后台自定义设置,更实用的移动设备特色功能模块 + 更适于欧美国外用户操作体验 大气简洁的网站风格设计 + 高效优化的网站程序结构,更利于Goolge等SEO搜索优化和站点收录排名。点击进入:wordpress高级全行业大气外贸主题主题价格:¥398...
百纵科技:美国高防服务器,洛杉矶C3机房 独家接入zenlayer清洗 带金盾硬防,CPU全系列E52670、E52680v3 DDR4内存 三星固态盘阵列!带宽接入了cn2/bgp线路,速度快,无需备案,非常适合国内外用户群体的外贸、搭建网站等用途。官方网站:https://www.baizon.cnC3机房,双程CN2线路,默认200G高防,3+1(高防IP),不限流量,季付送带宽美国洛杉矶C...