字符[管理]oracle sql语言模糊查询–通配符

oracle通配符  时间:2021-02-28  阅读:()

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;

}

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

青果网络-618阿里云,腾讯云特惠优惠折上折!

官方网站:点击访问青果云官方网站活动方案:—————————–活动规则—————————1、选购活动产品并下单(先不要支付)2、联系我司在线客服修改价格或领取赠送时间3、确认价格已按活动政策修改正确后,支付订单,到此产品开设成功4、本活动产品可以升级,升级所需费用按产品原价计算若发生退款,按资源实际使用情况折算为产品原价再退还剩余余额! 美国洛杉矶CN2_GIACPU内存系统盘流量宽带i...

hypervmart:英国/荷兰vps,2核/3GB内存/25GB NVMe空间/不限流量/1Gbps端口/Hyper-V,$10.97/季

hypervmart怎么样?hypervmart是一家国外主机商,成立于2011年,提供虚拟主机、VPS等,vps基于Hyper-V 2012 R2,宣称不超售,支持linux和windows,有荷兰和英国2个数据中心,特色是1Gbps带宽、不限流量。现在配置提高,价格不变,性价比提高了很多。(数据中心不太清楚,按以前的记录,应该是欧洲),支持Paypal付款。点击进入:hypervmart官方网...

木木云35元/月,美国vps服务器优惠,1核1G/500M带宽/1T硬盘/4T流量

木木云怎么样?木木云品牌成立于18年,此为贵州木木云科技有限公司旗下新运营高端的服务器的平台,目前已上线美国中部大盘鸡,母鸡采用E5-267X系列,硬盘全部组成阵列。目前,木木云美国vps进行了优惠促销,1核1G/500M带宽/1T硬盘/4T流量,仅35元/月。点击进入:木木云官方网站地址木木云优惠码:提供了一个您专用的优惠码: yuntue目前我们有如下产品套餐:DV型 1H 1G 500M带宽...

oracle通配符为你推荐
易pc华硕易PC怎么样?性价比到底怎么样?外网和内网什么是外网和内网?云播怎么看片云播看不了视频金山杀毒怎么样金山杀毒好吗?百度抢票浏览器现在火车票越来越难买了,新版百度手机浏览器,除了抢票外,还有什么其他功能吗?arm开发板arm开发板是干什么用的,是用在什么领域方面的在线代理网站求有效的代理服务器地址?ps抠图技巧ps中怎么抠图?网易公开课怎么下载哪位高手指导一下,如何下载网易公开课啊?腾讯文章为什么最近腾讯网的文章评论都看不到
awardspace godaddy主机 免费主机 themeforest 国内永久免费云服务器 56折 全能主机 湖南服务器托管 qingyun 圣诞促销 刀片服务器的优势 789电视网 idc查询 免费网页申请 厦门电信 supercache ssl加速 卡巴斯基官网下载 免费主页空间 ncp是什么 更多