Oracle如何实现like多个值的查询
客户给定的被叫号码如图所示:

查询出来的结果如下图所示(本批次的结果不是上图导入的结果查询的,为了格式说明,因此导入两张结果不相关的图片):

由于客户给的被叫号码很不规范,查询的时候比较麻烦。
分析过程:
我新建了一个表security_phonebill_callee_num,用以存放导入的被叫号码信息
所有的通话数据保存在t_phonebill_201702中,想要查询必须要实现like,就是以下sql的实现效果
?
1
2
3
4
select org_caller_num,org_callee_num,call_seconds,start_time,switch_id,
in_trunk,out_trunk,settle_carrier,file_name
from t_phonebill_201702 a
where a.org_callee_num like '%13800100186%'
但是这样的号码有好多个,有时候有一百多个,以上的sql只能查询一个号码的通话记录
一开始我想用游标实现,写一个游标,把被叫号码放入游标中,然后写一个循环,每次都依次查询一下,
但后来发现t_phonebill_201702数据量太大,like一次就要花费时间20分钟,100个就是2000分钟(30个小时),耗时量太大,效率太低。
后来查阅资料,多次尝试下写下这个sql,总算是实现了查询,实验论证效率也还不错。
?
1
2
3
4
5
6
select org_caller_num,a.org_callee_num,call_seconds,start_time,switch_id,
in_trunk,out_trunk,settle_carrier,file_name
from t_phonebill_201702 a
where exists
(select 1 from security_phonebill_callee_num c where a.org_callee_num
like '%||c.org_callee_num||%') ;
如果t_phonebill_201702表的数据量不大,可以考虑使用简版,简版更易于了解,也能更清楚明白like多个值是如何实现的,但使用exists总是一个好习惯。如果你有类似的需求,希望可以帮到你。
?
1
2
3
4
select org_caller_num,a.org_callee_num,call_seconds,start_time,switch_id,
in_trunk,out_trunk,settle_carrier,file_name
from t_phonebill_201702 a,security_phonebill_callee_num c
where a.org_callee_num like '%||c.org_callee_num||%'
相关热词:
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://www.juheyunku.com/sql/oracle/10546.shtml
相关文章
热门TAG
命令 权重 外链 企业网站 白帽 php 织梦教程 dedecms修改内容 javascript 织梦 功能 标签 调用 详解 服务器 网站流量 实例解析 Dedecms 织梦cms HTML tags标签 python jquery教程 jquery windows SEO优化 蜘蛛 搜索引擎 网站收录 JSP最新文章
-
Window下Oracle Database 11g 发行
时间:2020-12-29
-
Oracle如何实现like多个值的
时间:2020-12-29
-
maven添加oracle依赖失败问题
时间:2020-12-29
-
OracleRAC基本概念及入门
时间:2020-12-29
-
Azure File Storage 基本用法
时间:2020-12-26
-
Oracle 权限(grant revoke)
时间:2020-12-26
-
Azure Queue Storage 基本用法
时间:2020-12-26
-
如何对比迁移前后的Orac
时间:2020-12-26
热门文章
-
Azure Queue Storage 基本用法 Azure Storage 之
时间:2020-12-26
-
Oracle存储过程编程详解
时间:2020-12-07
-
win10下oracle 11g安装图文教程
时间:2020-12-25
-
oracle 数据库学习 基本结构介绍
时间:2020-12-13
-
Azure File Storage 基本用法 Azure Storage 之 F
时间:2020-12-26
-
windows使用sqlpus连接oracle 数据库的教程图
时间:2020-12-25
-
Window下Oracle Database 11g 发行版2安装教程
时间:2020-12-29
-
Oracle解锁的方式介绍
时间:2020-12-14
-
linux下oracle设置开机自启动实现方法
时间:2020-12-13
-
Oracle学习记录之使用自定义函数和触发器
时间:2020-12-07
