学习Qlik函数match 与 pick 的用法

在QlikSense Cookbook一书中有这样一段加载脚本,根据这段脚本来理解 pick  和 match 函数:

eg: pick(match("Product",'Footwear', 'Tyres', 'Mountain Bikes', 'Road Bikes'),RGB(236,129,0),RGB(250,185,0), RGB(70,137,164), RGB(141,25,8)) as "Productcolor" 

通过qlik sense 指导手册查到这样一个例子:

     pick( N,'A','B',4 )

    返回 'B',如果 N = 2

    返回  4, 如果 N = 3

 得出结论:pick 函数是根据N的值 返回后面第N个选择项的值   (n从1开始)

match( M, 'Jan','Feb','Mar')

返回 2,如果 M = Feb

返回 0,如果 M = Apr 或 jan (没有匹配到的情况)

 得出结论:match 函数是根据传入 的M值与后面的选择项匹配,匹配上了则返回对应的选择项的对应位置的序号(从1开始),没匹配上则返回0.

Tips:传入的值和匹配项间是要求完全匹配的,即会考虑字母大小写。

即  根据对于这两个函数的进一步理解,我们得出脚本中的加载语句的意图是:

product 为 'Footwear' 设置颜色为:RGB(236,129,0)

product 为 'Tyres' 设置颜色为:RGB(250,185,0)

product 为 'MountainBikes' 设置颜色为:RGB(70,137,164)

product 为 'RoadBikes' 设置颜色为:RGB(141,25,8)


Class 函数:class(expression, interval [ , label [ , offset ]])

class( var,10 ) with var = 23,返回 '20<=x<30'

class(var,5,'value' ) with var= 23,返回 '20<= value <25'

class( var,10,'x',5 ) with var = 23,返回 '15<=x<25'

var 即为要传入的变量值 和参数expression对应 interval 为区间长度范围  label 为最后返回结果里面的变量,offset 为起始点

针对这个函数要清楚 在没有设置offset值时  默认区间起始点是从0开始的 (即offset是用来设置修改默认区间起始点的)

eg1中第一个是0<=x<10 ,10<=x<20,20<=x<30 …

eg4中是设置了offset为5   则第一个是 5<=x<15 ,15<=x<25…
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值