为筛选条件选择比较运算符(报表生成器)

比较运算符(例如 equalsgreater thanless than)用于为实体的每个实例计算筛选条件,以确定是否应将相应的数据纳入报表中。比较运算符与文本、数字或日期数据一起使用。Equals 和 Not equals 与布尔值和 EntityKey 一起使用。默认情况下,equals 将显示为比较运算符,不过您可以从任何其他可用选项中对其进行选择。根据向筛选条件中添加的字段或实体的数据类型的不同,可用选项会有所不同。

使用 Not 选项

Not 选项用于指示只有不符合指定筛选条件的项才可纳入报表。例如,假设要查看除美国之外的所有国家和地区的销售数据。只需在筛选条件中使用 Not 选项来说明 Country 字段项应不等于 United States,而不用选择所有可用的国家和地区并将其列在筛选条件中。Not 选项可以与任何其他可用的比较运算符一起使用。

筛选空值或空白值

数据源中的某些字段或实体可能引用基础数据库中包含空白 (" ") 值或空 (Null) 值的表。例如,假设您的公司在 Internet 上销售自行车。在线销售订单中有一个字段为电子邮件地址字段,不过,购买时并不要求客户必须填写此字段。如果客户提交了电子邮件地址,则将该信息添加到数据库表中名为 emailaddress 的字段中。如果客户没有提供电子邮件地址,则 emailaddress 字段将包含空字符串值或空白字符串值。空白值仅适用于文本字段,而空值适用于所有数据类型。在创建和运行报表时,空信息或空白信息会包含在返回的数据中,除非专门使用筛选条件来排除这些数据才不会如此。

在筛选 empty 值时,请使用 Is Empty 选项。在筛选空白字符串时,请使用 Is Blank 选项。若要筛选 both empty and blank 值,请使用 Is Blank or Empty 选项。

使用相对日期

报表生成器在筛选器中支持两种类型的相对日期:相对日期值和相对日期范围。相对日期范围使用特定的比较运算符进行指定,可返回某个日期范围的数据。

在指示条件时,直接在文本框中指定日期值。有关相对日期值的详细信息,请参阅指定筛选条件(报表生成器)

相对日期范围

相对日期范围运算符只能与日期/时间字段一起使用。支持以下范围:

名称 说明 示例

到目前为止…月

返回从本月的第一天起到当天的数据。

假设今天为 06 年 5 月 16 日。将返回时间介于 06 年 5 月 1 日到 06 年 5 月 16 日之间的数据。

到目前为止…季度

返回从本季度的第一天起到当前日期的数据。

假设今天为 10 年 11 月 25 日,这是第四季度。将返回时间介于 10 年 10 月 1 日到 10 年 11 月 25 日之间的数据。

到目前为止…年

返回从本年度的第一天起到当前日期的数据。

假设今天为 10 年 11 月 25 日。将返回时间介于 10 年 1 月 1 日到 10 年 11 月 25 日之间的数据。

后 (n)…天

返回从当前日期到加上指定天数后所得日期之间的数据。

假设今天为 09 年 12 月 18 日,并指定 12 天。将返回时间介于 09 年 12 月 18 日到 09 年 12 月 30 日之间的数据。

后 (n)…天(包括今天)

返回指定的后面几天的数据,包括当前日期。

假设今天为 09 年 12 月 18 日,并指定 12 天。将返回时间介于 09 年 12 月 18 日到 09 年 12 月 30 日之间的数据(包括今天)。

后 (n)…月

返回从今天到加上指定月数后所得日期之间的数据。

假设今天为 09 年 12 月 18 日,并指定 4 个月。将返回时间介于 09 年 12 月 18 日到 10 年 4 月 18 日之间的数据。

后 (n)…月(包括本月)

返回指定的后面几个月的数据,包括当前日期所处月份。

假设今天为 09 年 12 月 18 日,并指定 4 个月。将返回时间介于 09 年 12 月 18 日到 10 年 4 月 18 日之间的数据(包括当前日期所处月份)。

后 (n)…年

返回从今天到加上指定年数后所得日期之间的数据。

假设今天为 10 年 12 月 18 日,并指定 2 年。将返回时间介于 10 年 12 月 18 日到 12 年 12 月 18 日之间的数据。

后 (n)…年(包括本年度)

返回指定的后面几年的数据,包括当前日期所处年度。

假设今天为 10 年 12 月 18 日,并指定 2 年。将返回时间介于 10 年 12 月 18 日到 12 年 12 月 18 日之间的数据。

前 (n)…月

返回指定的前面几个月的数据,包括当前月份。

假设今天为 07 年 6 月 15 日,并指定 2 个月。将返回时间介于 07 年 4 月 1 日到 07 年 5 月 31 日之间的数据。

前 (n)…月(包括本月)

返回指定的前面几个月的数据,包括当前月份。

假设今天为 07 年 6 月 15 日,并指定 2 个月。将返回时间介于 07 年 5 月 1 日到 07 年 6 月 16 日之间的数据。

前 (n)…天

返回指定的前面几天的数据,不包括当前日期。

假设今天为 07 年 6 月 15 日,并指定 5 天。将返回时间介于 07 年 6 月 10 日到 07 年 6 月 14 日之间的数据。

前 (n)…天(包括今天)

返回指定的前面几天的数据,包括当前日期。

假设今天为 07 年 6 月 15 日,并指定 5 天。将返回时间介于 07 年 6 月 10 日到 07 年 6 月 15 日之间的数据。

前 (n)…季度

返回指定的前面几个季度的数据,不包括当前季度。

假设今天为 07 年 6 月 15 日,并指定 1 个季度。将返回时间介于 07 年 1 月 1 日到 07 年 3 月 31 日之间的数据。

前 (n)…季度(包括本季度)

返回指定的前面几个季度的数据,包括当前季度。

假设今天为 07 年 6 月 15 日,并指定 1 个季度。将返回时间介于 07 年 1 月 1 日到 07 年 6 月 16 日之间的数据。

前 (n)…年

返回上一年的所有日期的数据。

假设今天为 07 年 6 月 15 日。将返回时间介于 06 年 1 月 1 日到 06 年 12 月 31 日之间的数据。

前 (n)…年(包括本年度)

返回指定的前面几年的数据,包括当前日期所处年度。

假设今天为 07 年 6 月 15 日,并指定 2 年。将返回时间介于 05 年 6 月 15 日到 07 年 6 月 15 日之间的数据。

此…月

返回当前日期所处日历月份的所有日期的数据。

假设今天为 08 年 8 月 14 日。将返回时间介于 08 年 8 月 1 日到 08 年 8 月 31 日之间的数据。

此…季度

返回当前日期所处日历季度的所有日期的数据。

假设今天为 08 年 8 月 14 日。将返回时间介于 08 年 7 月 1 日到 08 年 9 月 30 日之间的数据。

此…年

返回当前日期所处日历年度的所有日期的数据。

假设今天为 08 年 8 月 14 日。将返回时间介于 08 年 1 月 1 日到 08 年 12 月 31 日之间的数据。

与上一年相同…月

返回上一年同一月份的所有日期的数据。

假设今天为 09 年 8 月 31 日。将返回时间介于 08 年 8 月 1 日到 08 年 8 月 31 日之间的数据。

与上一年相同…季度

返回上一年同一季度的所有日期的数据。

假设今天为 09 年 8 月 31 日。将返回时间介于 08 年 7 月 1 日到 08 年 9 月 30 日之间的数据。

请参阅

任务

如何添加、移动或删除筛选条件(报表生成器)
如何对筛选条件进行分组(报表生成器)

概念

使用筛选器(报表生成器)
对筛选条件进行分组(报表生成器)

其他资源

“筛选数据”对话框(报表生成器)

帮助和信息

获取 SQL Server 2005 帮助