方法:1、利用“select * from 表名 where order_no not like 字符”语句查询;2、利用“select * from 表名 where not regexp_like(order_no,字符)”语句查询。
本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。
oracle怎么查询不包含指定字符
开发过程中遇到个需求,用户要提取的数据列中不包含 YF、ZF、JD的字符串,
方法1:
select * from table where order_no not like '%YF%' and order_no not like '%ZF' and order_no not like '%JD%'
登录后复制
感 觉方法1有点笨,想到REGEXP_LIKE 可以实现包含多个,在前面加上 not 就可以实现不包含功能,方法如下:
方法2:
select * from table where not regexp_like(order_no,'YF|ZF|JD')
登录后复制
两种方法都可以实现,但效率问题,经查询两个月11万条数据做比效方法1用时18秒,方法2用时15秒,连续测试三次方法1总是比方法快2至3秒,如果数据量大的还是建议使用方法1!
推荐教程:《Oracle视频教程》
以上就是oracle怎么查询不包含指定字符的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2071103.html