条件判断是一个常见的需求,在Excel公式以及DAX中都很常用,大家都知道用IF函数,用法也非常简单,那么在PowerQuery的条件判断怎么做呢?这篇文件就来介绍一下。 对于简单的条件判断,PowerQuery甚至不用自己写函数,可以直接添加条件列来实现,比如下面这个数据。 如果要添加一列考核结果,如果科目一成绩大于等于70分为通过,否则未通过,可以直接添加条件列,在弹出的窗口中选择列名、判断条件和输出值: 然后表中就添加了一列判断的结果: 是不是非常简单。 添加条件列以后,可以在编辑栏中看到自动生成的M公式: 这就是M中的if函数,它的语法如下: 注意if、then、else必须全部是小写字母,并且M中的if不像Excel或者DAX,if 后面是不需要用括号的。 上面的例子,也可以直接添加自定义列,输入:
结果也是相同的。 如果是复杂的条件判断,无法通过条件列实现的,直接通过自定义列,按照if then else的语法写公式即可。 对于多重判断,Excel和DAX的IF可以嵌套,M中的if也同样可以。 比如对上面的科目一成绩进行分类,大于等于90的为“优秀”、大于等于75的为“良好”、大于等于60的为及格,否则为“不及格”,用if添加自定义列可以这样写:
多重判断嵌套多个else if 语句就可以了,当然你也可以直接通过添加条件列,用多个子句来实现: 通过界面操作后,在编辑栏同样可以看到与上面自定义列一样的公式,他们的结果也是相同的: 如果是多个判断条件的集合,可以用 and/or 来连接多个条件。 假如还有个科目二,需要进行的判断逻辑是:科目一和科目二都大于等于90的为优秀、二科成绩之和大于等于140的为良好,否则未通过,这种就无法直接通过添加条件列来实现,而要用自定义列:
|
|