plsql导入excel(导个报表的经历)

  需求:需要一份excel数据来做统计分析,包括A,B,C,D四列数据,并且这些数据分别来自不同的系统,已从其他系统导出两列数据A,B,现在,需要把后两列数据补齐,可通过B列的值,在我们的数据库来查询C,D的数据。数据量为1W多。

  分析后得出C,D两列的数据,通过B,在本数据库中通过一个最简单的条件查询即可得到。

select t.C,t.D from table t where t.B in (B1,B2,B3……)

  但是,这种方式操作受限,

  限制一:oracle中in的个数不超过1000,1W数据,得操作10次;

  限制二:如果直接从excel中复制数据,需要在每个单元格数据后面加上逗号才够方便。

  于是,首先操作excel,批量在B列数据后面加个逗号,本以为,执行10条sql,把数据粘贴到excel中就可以了,若不是因为取了1000个B列的数据,而只查到900多数据,还真有可能就这样来处理这个需求了呢。

  查到的数据不一一匹配,这下可怎么粘贴到excel中?要保证数据对应啊,麻烦事,还是得另想办法了。于是,出来了最简单的方法二:建个临时表tableTemp,导入数据,再用个多表查询,就OK了。

  这个方式操作简单,没有技术难点,只要借助plsql把excel中的数据导入表,再用个left join 查询就可以得到最终的数据了。关键在于,是不是能够想到这种做事方法。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值