报表 > 第 1 步:定义标准 > 将筛选器添加到列
将筛选器添加到列
在“定义标准”页面中,您可以在报表中为列设置筛选器。筛选器限制运行报表时显示的结果,只显示那些符合标准的结果。
列筛选器由以下元素组成:
列筛选器还可以具有以下特性:
- 可以将其与同一主题区域中的其他列筛选器组合,以进一步限制报表的结果。
- 可以对筛选器进行分组以创建复杂的筛选器。
- 可以使用同一主题区域中以前保存的报表的结果对筛选器的值进行限制。
- 列筛选器仅适用于在其中构建筛选器的列。它不影响其他列。
筛选器将被转换为 SQL SELECT 语句中的 WHERE 子句。WHERE 子句用于将返回的行限定为那些符合指定约束的行。高级用户可以直接输入筛选器的 SQL 语句。
注意: 导入数据时,如果已选中用于添加新选择列表值的选项,则可能 24 小时后才会在报表中显示这些新选择列表值。因此,在此期间您可能无法将新的选择列表值用作筛选值。
创建列筛选器
您可以在报表的任何列中创建一个筛选器。如果不想让某一列显示在结果中,则可以隐藏它。
显示
警告: 如果在完成列筛选器的创建之前单击浏览器的“刷新”按钮,则浏览器将重新加载该页面并废弃所做的更改。
在不将列添加到报表的情况下创建筛选器
要创建列筛选器
- 在“定义标准”页面中,单击想要创建筛选器的列中的“新建筛选器”按钮。
- 在“创建/编辑筛选器”对话框中,从“运算符”下拉列表中选择一个运算符。
运算符和值的选项显示在左边的列中。根据所选择的列的类型,其他选项可能显示在右侧的列中,例如指定日期范围的日历按钮或限制较长值列表的文本匹配框。
- 要指定值,请在“值”框中输入值,或单击“所有选择”以查看列中的可用值,然后从列表中选择值。
在输入当前值字段的数据之后单击“添加”并选择“值”,这样可以添加多个值。
注意:要在“按住 Control 键并单击”筛选器上使用“所有选择/有限选择”,您需要在分析中至少选择一个列。选定的列不需要是您要添加筛选器的列。
当选择运算符并指定值时,使用下表中显示的指导。有关运算符的更多信息,请参阅本过程后面显示的运算符使用附注。
运算符
|
用法指导
|
等于或位于
|
对包含文本、数字或日期的列有效。指定一个值或多个值。结果将只包括列中的数据与筛选器中的值匹配的那些记录。
|
不等于或不位于
|
对包含文本、数字或日期的列有效。指定一个值或多个值。结果将只包括列中的数据与筛选器中的值不匹配的那些记录。
|
小于
|
对包含数字或日期的列有效。指定一个值。结果将只包括列中的数据小于筛选器中的值的那些记录。
|
大于
|
对包含数字或日期的列有效。指定一个值。结果将只包括列中的数据大于筛选器中的值的那些记录。
|
小于或等于
|
对包含数字或日期的列有效。指定一个值或多个值。结果将只包括列中的数据小于或等于筛选器中的值的那些记录。
|
大于或等于
|
对包含数字或日期的列有效。指定一个值或多个值。结果将只包括列中的数据大于或等于筛选器中的值的那些记录。
|
介于
|
对包含数字或日期的列有效。指定两个值。结果将包括指定的值及介于两个值之间的值的记录。
|
为空
|
对包含文本、数字或日期的列有效。不指定值。此运算符只检验列中是否不存在数据。结果将仅包括列中无数据的记录。
有时可能需要了解是否存在任何数据,使用 IS NULL 运算符可检查此条件。
|
不为空
|
对包含文本、数字或日期的列有效。不指定值。此运算符只检验列中是否存在数据。结果将只包括列中有数据的那些记录。
|
在前
|
对包含文本、数字或日期的列有效。指定一个值。结果将只包括前 n 个记录,其中 n 是指定为筛选器中的值的整数。
此运算符适用于已评级的结果。例如,您可以使用此运算符获得前 10 位表现优异者列表。
|
在后
|
对包含文本、数字或日期的列有效。指定一个值。结果将只包括后 n 个记录,其中 n 是指定为筛选器中的值的整数。
此运算符适用于已评级的结果。例如,您可以使用此运算符获得那些报告的问题数目最少的客户列表。
|
包含所有
|
对包含文本、数字或日期的列有效。指定一个值或多个值。结果将只包括列中的数据包含筛选器中所有值的那些记录。
|
包含任意
|
对包含文本、数字或日期的列有效。指定一个值或多个值。结果将只包括列中的数据至少包含筛选器中的一个值的那些记录。
|
不包含
|
对包含文本、数字或日期的列有效。指定一个值或多个值。结果将只包括列中的数据不包含筛选器中任何一个值的那些记录。
|
开始于
|
对包含文本、数字或日期的列有效。指定一个值。结果将只包括列中的数据以筛选器中的值开头的那些记录。
|
结束于
|
对包含文本、数字或日期的列有效。指定一个值。结果将只包括列中的数据以筛选器中的值结尾的那些记录。
|
类似于(模式匹配)
|
对包含文本的列有效。指定一个值或多个值。需要使用百分号字符 (%) 作为通配符。最多可以在值中指定两个百分号字符。结果将只包括列中的数据与筛选器中的模式值匹配的那些记录。
|
不类似于(模式匹配)
|
对包含文本的列有效。指定一个值或多个值。需要使用百分号字符 (%) 作为通配符。最多可以在值中指定两个百分号字符。结果将只包括列中的数据与筛选器中的模式值不匹配的那些记录。
|
提示符
|
对包含文本、数字或日期的列有效。如果将列设置为提示符 标志,则将使用从另一个报表传递来的值对其进行筛选。
注意: 通过导航将报表链接在一起时使用此选项(请参阅第 2 步:创建布局)。所追溯的报表中的一列或多列必须包含提示符 筛选器,以便该报表所显示的行不超过从父报表选择和追溯的值。
|
- 当列有许多选项时,可以使用分页控件在各选项间导航:
- 单击特定的页码导航到该页。
- 单击双右箭头分页按钮 ( >> ) 前进到最后一页,或单击双左箭头分页按钮 ( << ) 返回到第一页。
- 使用日历按钮为包含日期的列指定日期范围。
要指定单个日期,请为开始日期和结束日期指定同一个日期。
- 使用“匹配”下拉列表以查看可用于筛选器的值。如果需要,可用指定标准来限制将返回的值(这不是强制性的)。然后单击“所有选择”链接,并从返回的列表中选择值。
例如,假设要查看东部区域的结果。如果在文本框中输入“E”并从“匹配”下拉列表中选择“开头是”,则列表只显示以“E”开头的值。
- 要添加 SQL 表达式或会话变量,请执行以下操作:
- 单击“添加”按钮并选择适当的选项。
“值”框上的标签发生更改以反映您的选择。
- 在此框中输入 SQL 表达式或会话变量名。
SQL 表达式可以包含对列值进行操作的函数调用。有关更多信息,请参阅在分析中使用函数和会话变量。
- 要移除值、SQL 表达式或会话变量,请单击旁边的“X”图标。
要移除所有定义,请单击“清除值”按钮。
- 要让同一主题区域中另一个分析中的列的值限制此筛选器,请单击“高级”按钮并选择“基于另一请求的结果进行筛选”选项。
即会出现“基于保存的请求进行筛选”对话框。
- 要将筛选器转换为 SQL,请单击“高级”按钮并选择“将此筛选器转换为 SQL”选项。
即会出现“高级 SQL 筛选器”对话框。
- 操作完毕后单击“确定”。
该筛选器显示在“定义标准”页面或“保存的筛选器”页面上的“筛选器”区域中。
运算符使用附注
部分运算符的功能类似,但不完全相同。请注意以下运算符的相似之处和不同之处:
等于或位于将搜索介于搜索标准和数据库中的值之间的精确匹配项。例如,如果标准是 Pat Lee,仅 Pat Lee 精确匹配和通过筛选器。由于所有搜索均区分大小写,pat Lee 或 Pat lee 等值不会通过筛选器。
包含所有将搜索所有与标准匹配的值,且所有值都必须位于值中才能通过筛选器,如在 AND 搜索中。例如,如果标准是搜索两个值,即值 = Pat 和值 =Lee,Pat Lee 和 Lee Pat 将通过筛选器,但 pat Lee、Pat Smith 和 Chris Lee 不会通过筛选器,因为它们不包含所有标准 (Pat AND Lee)。
包含任意将搜索与标准匹配的值,但是由于不需要匹配所有值而不那么严格,如在 OR 搜索中。例如,如果标准是搜索两个值,即值 = Pat 和值 = Lee,Pat、Pat Smith、Chris Lee 和 Lee 都将通过筛选器,因为它们符合 Pat OR Lee 的标准。
类似于将搜索模式,因此需要使用一个或两个百分比符号 (%) 作为通配符。例如,如果搜索标准是值 = P%t %ee,则 Pat Lee、Pit smee 和 Packet trainee 都将通过筛选器,但 pat Lee 不会通过。
要实现最高搜索速度,请减少或消除使用模式匹配运算符,如“包含所有”、“包含任意”和“类似于”。如果要按精确值搜索,请勿使用模式匹配运算符,而使用精确运算符。
保存列筛选器
您可以保存筛选器作为分析的一部分或供在其他分析中重新使用。如果某个筛选器用于特定的分析并且您保存了该分析,则该筛选器将作为分析的一部分保存,每次运行该分析时都将应用该筛选器。您还可以明确保存筛选器以便可以在其他分析中使用。
主题区域的已保存筛选器和包含筛选器的文件夹显示在主题区域名称的后面。如果主题区域没有保存的筛选器,则页面的这一部分是空白的。
要将列筛选器保存为分析的一部分
- 在“定义标准”页面,单击“保存”。
- 在“保存分析”对话框,选择要保存分析的位置,然后单击“确定”。
要保存列筛选器以在其他分析中使用
- 在“定义标准”页面的“筛选器”部分,单击“保存筛选器”。
- 在“保存筛选器”对话框中,选择要保存筛选器的文件夹:
- 为该筛选器输入一个名称。
- (可选)输入该筛选器的说明。
- 单击“确定”。
要显示已保存筛选器的属性
- 在“定义标准”页面的“筛选器”部分,单击想要显示其属性的筛选器旁边的“筛选器选项”图标,然后选择“编辑筛选器”选项。
将已保存的列筛选器应用于分析
您可以将已保存的列筛选器应用于分析。您可以应用筛选器的内容或应用对筛选器的引用。
当应用保存的列筛选器的内容时,该筛选器的实际内容将被复制到“定义标准”页面的“筛选器”区域中。这允许您在不更改已保存的筛选器的情况下操作筛选器标准。当应用对保存的筛选器的引用时,只能通过其名称引用保存的筛选器,您可以查看但不能更改其内容。
要将已保存的列筛选器应用于分析
- 在“定义标准”页面的“筛选器”部分,单击“打开已保存的筛选器”。
- 导航到合适的“筛选器”文件夹,选择想要应用的已保存筛选器,然后单击“确定”。
- 在“应用已保存的筛选器”对话框的“筛选器选项”部分,指定您的选择(如果有)。
- 单击“确定”。
该筛选器显示在“定义标准”页面上的“筛选器”区域中。
编辑列筛选器
您可以编辑列筛选器以更改其属性。
要编辑列筛选器
- 在“定义标准”页面的“筛选器”部分,单击想要编辑的筛选器的“筛选器选项”按钮,然后选择“编辑筛选器”。
即会出现“创建/编辑筛选器”对话框。
- 进行更改,然后单击“确定”。
编辑列筛选器的公式
您可以编辑列筛选器的公式。您进行的编辑只适用于列的筛选器使用;公式可以包含对函数的调用以执行更多高级计算。请参阅在分析中使用函数。
要编辑筛选器的列公式
- 在“定义标准”页面的“筛选器”部分,单击筛选器的“筛选器选项”按钮,然后选择“编辑列公式”。
- 单击“列公式”选项卡。
- 在“列公式”区域输入公式。
- 单击“确定”,以保存所做的更改。
移除列筛选器
您可以移除分析中的一个筛选器或所有筛选器。
注意: 如果以前保存分析时应用了任何筛选器,则再次保存该分析以移除这些筛选器。
要从分析中移除列筛选器
- 在“定义标准”页面的“筛选器”部分,单击“X”图标。
将列筛选器与其他列筛选器组合
组合列筛选器(也称为“插入筛选”)允许您无需了解 SQL 就可以创建复杂的筛选器。
您可以通过 AND 和 OR 运算符组合列筛选器。AND 运算符表示必须满足每个筛选器中指定的标准。这是组合列筛选器的默认方法。OR 运算符表示必须满足至少一个列筛选器中指定的标准。
要将列筛选器与其他列筛选器组合
- 在“定义标准”页面中,将至少两个列筛选器添加到分析中,或将至少两个列筛选器添加到保存的筛选器中。
在“筛选器”部分中列出筛选器,它们之间有 AND 运算符。
- 要将 AND 运算符更改为 OR 运算符,请单击它。
- 在添加列筛选器时,单击 AND 和 OR 运算符对筛选器进行分组并构建所需的筛选器组合。
组合的筛选器元素以框为界。
- 要剪切、复制框内的元素或取消这些元素的分组,请单击“编辑筛选器分组”按钮,然后选择适当的选项。
防止筛选器在导航和提示期间被替换
您可以保护报表中的筛选器内容,使它们在导航和提示期间不受影响。受保护的筛选器总是会应用到结果中。
要保护筛选器在导航和提示期间不发生更改
- 在“定义标准”页面的“筛选器”部分,单击筛选器的“筛选器选项”按钮,然后选择“保护筛选器”。
使用保存的报表作为筛选器
筛选器可以与其他筛选器组合,也可以基于另一个报表返回的值。任何返回一列值的已保存报表都可以用于筛选您的报表中所选的列。
要根据另一个保存的报表的结果创建筛选器
- 在“定义标准”页面中,单击想要创建筛选器的列中的“新建筛选器”按钮。
- 在“创建/编辑筛选器”对话框中,单击“高级”,然后选择“根据另一个请求的结果进行筛选”选项。
- 在“根据保存的请求进行筛选”对话框的“关系”字段中,选择结果与待筛选列之间的适当关系。
- 单击“浏览”导航到保存的报表。
- 在“使用列中值”字段中,选择要用于筛选器的列。
如果已保存报表中的某个列名称与创建筛选器所在的列相匹配,则该列名称会第一个显示在“使用列中值”字段的值列表中。您可以选择不同的列。
- 单击“确定”。
筛选器显示在“定义标准”页面上的“筛选器”部分中。
注意:如果稍后想要编辑筛选器,可仅编辑“根据保存的请求进行筛选”对话框中的信息。
编辑列筛选器的 SQL 语句
可以编辑逻辑 SQL WHERE 子句以用作筛选器。虽然通常不一定要这么做,但此功能可供需要高级筛选功能的用户使用。有关 SQL 语法的完整说明,请参阅有关 SQL 的第三方参考书、某个数据库供应商提供的有关 SQL 的参考手册或联机参考站点。有关使用 SQL 的更广泛信息,请参阅在分析中使用函数。
要编辑为列筛选器生成的 SQL 语句
- 在“创建/编辑筛选器”对话框中,单击“高级”,然后选择“将此筛选器转换为 SQL”选项。
- 在文本框中输入您的修改,然后单击“确定”。
该筛选器显示在“定义标准”页面上的“筛选器”区域中。一旦选择此选项之后,编辑筛选器将显示您输入的 SQL。
例如:确定销售量最大的客户
下面的示例报告有关 2003 年中销售量最大的 10 个客户的数据。
"Close Date"."Calendar Year" = 2003
AND RANK("Opportunity Metrics"."Closed Revenue") <= 10
|