开年第一招——用FOR循环加载相同结构数据表或库

浏览: 1757

在数据处理时我们经常会遇到这样的场景:

某些事实表DBA会定期进行备份,运气好点的就只是加个日期后缀,运气差点那表名就是乱起的;

又或者一些集团公司下属几十上百个子公司都有各自的数据库,库名又是毫无规律可循…

这种情况如果老老实实的一张表一张表写查询代码,那重复工作可就多了去了,而且上线后人家又备份了一张表多开个子公司呢,难道还回头去改脚本么?


今天教你一招,我们可以使用For循环,将相同结构的多张表甚至是多个数据库进行循环加载,只要维护一份目录表,就不用回头重新修改代码了。这个方法不仅适用于Qlik,很多其他数据分析软件都可以用哦,是个很赞很实用的方法。




这里有9张不同地区提供的数据表,数据结构都是一样的



首先我们做一个目录表,把所有表的表名按顺序罗列出来,记得标上序号



然后进入Qlik脚本编辑器中加载目录表,并且添加变量计算目录表行数




下面开始写For循环语句了




用之前添加的目录行数变量作为循环次数,使用Peek函数获取每次循环的表名,Peek函数是从第0行开始算的,所以一定要-1

脚本写好了,执行加载!




就得到包含9张表所有数据的一张大表了!


同样道理,我们只要将目录表中的表名替换成库名,For循环中加载的一张表换成整个数据库,就可以很方便的加载多个相同结构的数据库了。

通过For循环加载多个数据表或库,不但能够简化开发,而且维护起来也是相当顺手,对开发者及维护者都节省了大量工作。


是不是觉得这种方法很好用,大大节省了时间和成本,一个好工具更能帮助你事半功倍。不妨试试Qlik desktop版,全新的数据分析与可视化体验,让你对报表不再头疼。



国内领先的大数据整体解决方案

为客户提供大数据分析平台端到端的解决方案

Ebistrategy

亦 策 软 件

400-676-1711

长按关注

推荐 2
本文由 ebistrategy 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册