过滤器

可为过滤器准备部件进行配置的属性。

语法 使用此部件可过滤基于特定条件的行和列。
注意 数据库内过滤器部件不支持函数和高级表达式。
注意 如果在配置过滤器部件后更改数据源,过滤器部件仍保留之前定义的行过滤器。
过滤器属性
表 1: 数据准备部件属性
属性 说明
选定的列 为分析选择列。
过滤条件 输入过滤条件。

从源数据中过滤“商店”列并应用“利润>2000”的条件。
商店 收入 利润
Land Mark 10000 1000
Spencer 20000 4500
Soch 25000 8000
  1. 取消选中选定列中的“商店”一列。
  2. “行过滤器”窗格中,选择“利润”一列。
  3. “从范围中选择”选项中的“从”文本框中输入 2000。“To”(到)文本框应为空。
  4. 选择“确定”
  5. 选择“保存并关闭”
  6. 执行分析。
输出表:
收入 利润
20000 4500
25000 8000

语法
注意 过滤器部件仅支持返回布尔型结果的表达式。
例如,在下面的员工表中:
员工 ID 员工姓名 出生日期 年龄 入职日期 确认日期
1 Laura 11/11/1986 25 12/9/2005 27/11/2005
2 Desy 12/5/1981 30 24/6/2000 10/7/2000
3 Alex 30/5/1978 33 10/10/1998 24/10/1998
4 John 6/6/1979 32 2/12/1999 20/12/1999
  • 表达式 DAYSBETWEEN([入职日期],[确认日期]) 不是有效的过滤器表达式,因为它返回的是数值。过滤器中 DAYSBETWEEN 表达式的正确用法是 DAYSBETWEEN([入职日期],[确认日期]) == 14。此表达式可以选择“入职日期”和“确认日期”之间的天数是 14 的行。对于上面的员工表格,选择的是第三行。
  • DAYNAME([入职日期]) == 'Saturday' 选择的是该员工表格的第二行和第三行。
注意 输入包含单引号的字符串时,字符串内的每一个单引号必须使用反斜线字符进行转义。例如,将 “Customer's” 输入为 “Customer\'s”。
注意 输入包含方括号的列名称时,列名称内的每一个方括号必须使用反斜线字符进行转义。例如,将 [Customer[Age]] 输入为 [Customer\[Age\]]。
支持的函数
注意 过滤器部件不支持数据操作函数。
类别 函数(应用于员工表格时起作用) 说明
日期 DAYSBETWEEN 返回两个日期之间的天数。
  CURRENTDATE 返回当前系统日期。
  MONTHSBETWEEN 返回两个日期之间的月份数。

例如,当将 MONTHSBETWEEN([入职日期],[确认日期]) 应用到员工表格时,新列将包含 2、0、2、0。

  DAYNAME 返回字符串格式的日名称。

例如,当将 DAYNAME([入职日期]) 应用到员工表格时,新列将包含“Monday”、“Saturday”、“Saturday”、“Thursday”。

  DAYNUMBEROFMONTH 返回某天在特定月份中的排列序数。

例如,12/11/1980 返回 12。

  DAYNUMBEROFWEEK 返回某天在周中的排列序数。

例如,星期日 = 1、星期一 = 2。

  DAYNUMBEROFYEAR 返回某天在年中的排列序数。

例如,1st Jan = 1、1st Feb = 32、3rd Feb = 34。

  LASTDATEOFWEEK 返回一周中最后一天的日期。

例如,12/9/2005 返回 17/9/2005

  LASTDATEOFMONTH 返回月份中最后一天的日期。

例如,12/9/2005 返回 30/9/2005

  MONTHNUMBEROFYEAR 返回日期所在的月份数。

例如,Jan = 1、Feb = 2、Mar = 3

  WEEKNUMBEROFYEAR 返回周在年中的排列序数。

例如,12/9/2005 返回 38。

  QUARTERNUMBEROFDATE 返回日期所在的季度数。

例如,12/9/2005 返回 3。

字符串 CONCAT 拼接两个字符串。

例如,CONCAT('USA', 'Australia') 返回 USAAustralia。

  INSTRING 如果在源字符串中找到搜索字符串,则返回“真”。

例如,INSTRING('USA', 'US') 返回“真”。

  SUBSTRING 返回源字符串中的子字符串。

例如,SUBSTRING('USA', 1,2) 返回 US。

数学 MAX 返回列中的最大值。
  MIN 返回列中的最小值。
  COUNT 返回列中值的数量。
  SUM 返回列中值的总和。
  AVERAGE 返回列中值的平均值。
条件表达式 IF(条件) THEN(字符串表达式/数学表达式) ELSE(字符串表达式/数学表达式/条件表达式) 检查是否满足条件,如果“真”则返回一个值,如果“假”则返回另一个值。

例如,IF([入职日期]>12/9/2005) THEN('2005 年 9 月 12 日以后加入的员工') ELSE('2005 年 9 月 12 日当日或之前加入的员工')

注意 不支持包含返回数值的函数的数学表达式。例如,不支持表达式 DAYNUMBEROFMONTH(CURRENTDATE())==2,因为 DAYNUMBEROFMONTH 会返回数值。
数学运算符

使用数学运算符创建包含数值列和/或数字的公式。例如,表达式 [年龄] + 1 添加了一个新列,新列包含值 26、31、34、33。

数学运算符 说明
+ 加法运算符
- 减法运算符
* 乘法运算符
/ 除法运算符
() 圆括弧或圆括号
^ 幂运算符
% 取模运算符
E 指数运算符
条件运算符

使用条件运算符创建 IF THEN ELSE 或 SELECT 表达式。

条件运算符 说明
== 等于
!= 不等于
< 小于
> 大于
<= 小于等于
>= 大于等于
逻辑运算符

使用逻辑运算符比较两个条件,并返回“真”或“假”。例如,IF([入职日期]>12/9/2005 && [年龄] >=25 ) THEN ('True') ELSE ('False') 添加了一个包含值“真”、“假”、“假”、“假”的新列。

逻辑运算符 说明
&& AND
|| OR