范围

适用于:计算列计算表度量值视觉计算

返回给定轴中相对于当前行的行的间隔。 此间隔由当前行之前的最后 step 行或当前行之后的第一个 step 行组成。

语法

RANGE ( <step>[, <includeCurrent>][, <axis>][, <blanks>][, <reset>] )

参数

术语 定义
step 要包含在区域中的当前行之前(负值)或(正值)之前的行数。 必须是常量值。
- 如果为负数,窗口将包含当前行之前的最后 -step 行。
- 否则,窗口将包含当前行之后的第一步行。
includeCurrent (可选)一个逻辑值,指定是否在区域中包括当前行。 默认值为 True。
axis (可选)轴引用,将沿该间隔创建的方向。
blanks (可选)一个枚举,用于定义在排序时如何处理空值。
支持的值为:
  • DEFAULT (默认值),其中数值的行为是空值在零和负值之间排序。 字符串的行为是空值在所有字符串(包括空字符串)之前排序。
  • 首先,无论升序或降序排序顺序如何,空白始终在开头排序。
  • LAST,空白始终在末尾排序,而不考虑升序或降序排序顺序。
reset (可选)指示计算是否重置,以及视觉形状的列层次结构的哪个级别。 接受的值为:NONE、LOWESTPARENT、HIGHESTPARENT 或整数。 此行为取决于整数符号:
- 如果为零或省略,则计算不会重置。 等效于 NONE。
- 如果为正值,则整数标识从最高、与粒度无关的列。 HIGHESTPARENT 等效于 1。
- 如果为负数,则整数标识从最低到当前粒度的列。 LOWESTPARENT 等效于 -1。

返回值

数据行的间隔。

言论

此函数只能在视觉计算中使用。

可以省略 includeCurrentaxisblanksreset 参数。

示例 1

给定汇总每个产品类别和月份总销售额的表,以下 DAX 查询将添加一个列,其中包含过去 6 个月的总销售额:

TotalSalesLast6Months = CALCULATE(SUM([SalesAmount]), RANGE(-5, Rows))

下面的屏幕截图显示了视觉矩阵和视觉计算表达式:

DAX 视觉计算

示例 2

给定同一表后,以下 DAX 查询将添加一列,其中包含以下 12 个月的总销售额,不包括当前月份:

TotalSalesFollowingYear = CALCULATE(SUM([SalesAmount]), RANGE(12, FALSE, Rows, KEEP))

另请参阅

INDEX
ORDERBY
PARTITIONBY
窗口