SSRS Min 函数是一个聚合和数学函数,用于返回给定字段中所有非空数值的最小值。本文将通过示例说明如何使用 Min 函数来查找特定组或整个表中的最小值。
SSRS Min 函数用于查找默认范围内的最小值的语法如下所示。
Min(Fields!SalesAmount.Value)
要查找每个组、表或数据集的最小值,请将名称替换为组、Tablix 或数据集的名称。
Min(Fields!SalesAmount.Value, "Name")
Min(Fields!SalesAmount.Value, "Name", Recursive)
为了演示 SSRS Min 函数,我们使用了下面的员工表,该表有 15 条记录,按职业分组。下面的 Min 图像显示了表格报表中的记录。

SSRS Min 函数示例
右键单击详细信息行中的任何字段,选择“插入行”,然后选择“组外部—下方”选项以添加新行。接下来,合并前三列并将“最小值”添加为文本。为了更好地理解报表,建议您参考 SSRS 中的 图表、表格、分组 和 格式化表格 文章。
编写 SSRS Min 函数有多种方法。第一种方法是单击单元格并选择 YearlyIncome 字段。它将分配默认的聚合函数,即 Sum。因此,选择文本(Sum(YearlyIncome)),选择“汇总方式”,然后单击 Min 函数。它会在内部写入以下表达式
=Min(Fields!YearlyIncome.Value)

第二种方法是右键单击“销售额”下方的文本框,然后选择“表达式”选项。这将打开以下表达式窗口,允许您编写更复杂的 SSRS Min 函数和范围。下面的代码返回最小销售额。
=Min(Fields!Sales.Value)

请点击预览选项卡以查看员工的最低年收入和最低销售额。如果您观察报表,默认情况下,它会在每个职业组中显示最小值,因为这是默认范围。有关更多函数 >> 单击此处!

SSRS Min 函数范围演示
首先,在“销售额”右侧添加一个新列,并将标题命名为“最低销售额”。接下来,右键单击文本框并选择“表达式”。
下面的 Min 函数表达式返回的结果与“最小值”行显示的结果相同:每个组中的最小值。但是,您拥有更多控制权,因为我们手动更改了 Min 函数的范围。
=Min(Fields!Sales.Value, "Occupation")
下面的表达式将每个职业组的最低销售额从各个员工的销售额中减去。请记住,“Occupation”是组名。
=Fields!Sales.Value - Min(Fields!Sales.Value, "Occupation")

如前所述,要查找整个表或所有员工的最小值,您必须将组名(“Occupation”)替换为表名(“Tablix1”)。我将添加一个组外部的额外行。接下来,为年收入和销售额添加下面的两个 SSRS Min 函数表达式。
=Min(Fields!YearlyIncome.Value, "Tablix1")
=Min(Fields!Sales.Value, "Tablix1")
类似地,添加一个新列,将员工销售额值从表的最低销售额值中减去。
=Fields!Sales.Value - Min(Fields!Sales.Value, "Tablix1")
下面的报表显示了每个组和整个表的最小值。请在 Min 函数中将 Tablix1 替换为数据集名称,以获取最低销售额,而不考虑应用于报表的筛选器。
如果您查看报表预览,Rob Johnson 的最低销售额:3399.99(销售额)– 2234.99(管理层最低值)= 1165。同时,销售额标题列为 3399.99(销售额)– 23.5(表最低值)= 3376.49。
