QlikView ETL - 分隔字符串的方法 SubField
2015-02-27 15:31 BIWORK 阅读(2546) 评论(2) 编辑 收藏 举报开篇介绍
今天在使用 QV 加载数据的时候会碰到列中的一些状态,信息是通过;或者 / 等符号分隔的,这样不利于做数据分析,因为字符串中的内容本身就是维度。上网搜了一下找到了解决的方法,记录一下。
比如第一幅图中 S200,M250,R35 都是 Invoice 的类型,这时都需要取出来作为分析的维度 DIMENSION。
可以通过下面的代码来实现上图的分隔效果,取出所有的 Invoice 类型,这样就可以做数据统计分析了。当然,其它的列会出现重新数据,在聚合的时候注意就好了。
代码
Source: Load * Inline [ ID , Invoice 1 , S200/M250/R35/ 2 , M1687/A35/D879/F689/ 3 , B33625/S55/ ] ; Destination: Load ID , NewInvoice Where Len ( NewInvoice ) > 0; Load ID , Invoice , SubField( Invoice,'/') AS NewInvoice ; Load * Inline [ ID , Invoice 1 , S200/M250/R35/ 2 , M1687/A35/D879/F689/ 3 , B33625/S55/ ] ;
更多 BI 文章请参看 BI 系列随笔列表 (SSIS, SSRS, SSAS, MDX, SQL Server) 如果觉得这篇文章看了对您有帮助,请帮助推荐,以方便他人在 BIWORK 博客推荐栏中快速看到这些文章。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步